nodejs body-parser 解析post数据实例


Posted in NodeJs onJuly 26, 2017

安装

$ npm install body-parser

API

var bodyPaeser =require('body-parser')

可以通过body-parser 对象创建中间件,当接收到客户端请求时所有的中间件都会给req.body 添加属性,请求体为空,则解析为空{} (或者出现错误)。

bodyParser.json(options)

中间件只会解析 json ,允许请求提任意Unicode编码支持 gzip 和 deflate 编码。

options

一个对象,有以下属性

inflate

默认为false,true->压缩的请求体会被解压,false->压缩的请求提不被解压。

limit

控制请求体最大大小,默认为100kb,当为数字时会转换为bytes,当为字符串时,value值会通过 bytes库 转换为字节大小。

reviver

此选项会通过JSON.parse直接传给其第二个参数。

strict

默认为true,当为true时只接受数组和对象,当为false时会接受任何JSON.parse 能接受的。

type

type 选项用来决定中间件要解析媒体类型。选项可以是一个函数或者是字符串。当为字符串时,可以直接通过type-is 库直接传递给选项,字符串也可以为一个扩展名(例如json)、mime 类型(application/json、/ 、*/json)。当为函数时:默认为application/json。

verify

verify选项,若缺失则为一个函数function(req,res,buf,encoding),buf为一个Buffer。

bodyParse.raw(option)

将请求体内容作为Buffer来处理,并返回。支持gzip deflate 压缩。

inflate

limit

type

verify

bodyParser.text(option)

将请求提内容作为字符串来处理,并返回。支持gzip deflate 压缩。

defaultCharset

若请求头未设置Content-Type则默认为utf8

inflate

type

verify

bodyParser.urlencoded(option)

中间件只解析urlencoded 请求体,并返回,只支持UTF-8编号文本,支持gzip deflate 压缩。

extend

ture->使用queryString库(默认) false->使用qs库。

limit

parameterlimit

指定parameters最长长度,默认1000

type

verify

举例:

const express=require('express');
const bodyParser=require('body-parser');

var server=express();
server.listen(8080);

server.use(bodyParser.urlencoded({
 extended: false,         //扩展模式
 limit:  2*1024*1024      //限制-2M
}));

server.use('/', function (req, res){
 console.log(req.body); //POST
 //req.query  GET
 //req.body  POST
});

html代码:

<form action="http://localhost:8080" method="post">
   用户:<input type="text" name="user" /><br>
   密码:<input type="password" name="pass" /><br>
<input type="submit" value="提交" >

以上这篇nodejs body-parser 解析post数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
浅谈Nodejs观察者模式
Oct 13 NodeJs
初探nodeJS
Jan 24 NodeJs
nodejs实现邮件发送服务实例分享
Mar 29 NodeJs
nodejs服务搭建教程 nodejs访问本地站点文件
Apr 07 NodeJs
nodejs处理图片的中间件node-images详解
May 08 NodeJs
nodejs实现套接字服务功能详解
Jun 21 NodeJs
nodejs用gulp管理前端文件方法
Jun 24 NodeJs
nodejs 使用http进行post或get请求的实例(携带cookie)
Jan 03 NodeJs
通过Nodejs搭建网站简单实现注册登录流程
Jun 14 NodeJs
nodejs脚本centos开机启动实操方法
Mar 04 NodeJs
分享node.js实现简单登录注册的具体代码
Apr 26 NodeJs
深入解析nodejs HTTP服务
Jul 25 #NodeJs
NodeJS使用七牛云存储上传文件的方法
Jul 24 #NodeJs
nodejs 搭建简易服务器的图文教程(推荐)
Jul 18 #NodeJs
nodejs密码加密中生成随机数的实例代码
Jul 17 #NodeJs
nodejs构建本地web测试服务器 如何解决访问静态资源问题
Jul 14 #NodeJs
基于nodejs+express4.X实现文件下载的实例代码
Jul 13 #NodeJs
详解nodejs的express如何自动生成项目框架
Jul 12 #NodeJs
You might like
php读取msn上的用户信息类
2008/12/05 PHP
php获取数组中重复数据的两种方法
2013/06/28 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
解决jquery的.animate()函数在IE6下的问题
2010/12/03 Javascript
javascript动态向网页中添加表格实现代码
2014/02/19 Javascript
JsRender for object语法简介
2014/10/31 Javascript
jquery事件preventDefault()方法用法实例
2015/01/16 Javascript
nodejs实现获取当前url地址及url各种参数值
2015/06/25 NodeJs
JavaScript判断表单为空及获取焦点的方法
2016/02/12 Javascript
nodejs实例解析(输出hello world)
2017/01/03 NodeJs
基于JavaScript实现熔岩灯效果导航菜单
2017/01/04 Javascript
Bootstrap学习笔记之进度条、媒体对象实例详解
2017/03/09 Javascript
jQuery图片瀑布流的简单实现代码
2017/03/15 Javascript
Bootstrap 设置datetimepicker在屏幕上面弹出设置方法
2017/03/21 Javascript
微信小程序--组件(swiper)详细介绍
2017/06/13 Javascript
AngularJS实现的base64编码与解码功能示例
2018/05/17 Javascript
vue+高德地图写地图选址组件的方法
2019/05/18 Javascript
[01:02:48]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 LGD vs OG
2018/04/02 DOTA
Python实现替换文件中指定内容的方法
2018/03/19 Python
详解Django 中是否使用时区的区别
2018/06/14 Python
使用pytorch进行图像的顺序读取方法
2018/07/27 Python
python对日志进行处理的实例代码
2018/10/06 Python
Django项目后台不挂断运行的方法
2019/08/31 Python
Python线程threading模块用法详解
2020/02/26 Python
html5跨域通讯之postMessage的用法总结
2013/11/07 HTML / CSS
浅谈html5标签css3的常用样式
2016/10/20 HTML / CSS
土耳其玩具商店:Toyzz Shop
2019/08/02 全球购物
写给女朋友的道歉信
2014/01/08 职场文书
留学推荐信写作指南
2014/01/25 职场文书
运动会入场词200字
2014/02/15 职场文书
出纳会计岗位职责
2014/03/12 职场文书
函授生自我鉴定
2014/03/25 职场文书
党的群众路线教育实践活动个人整改措施落实情况
2014/11/04 职场文书
离婚承诺书格式范文
2015/05/04 职场文书
Java 中的 Unsafe 魔法类的作用大全
2021/06/26 Java/Android
react中useState使用:如何实现在当前表格直接更改数据
2022/08/05 Javascript