nodejs body-parser 解析post数据
2017-07-25 18:55
609 查看
安装
$ 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
举例:
1 const express=require('express'); 2 const bodyParser=require('body-parser'); 3 4 var server=express(); 5 server.listen(8080); 6 7 server.use(bodyParser.urlencoded({ 8 extended: false, //扩展模式 9 limit: 2*1024*1024 //限制-2M 10 })); 11 12 server.use('/', function (req, res){ 13 console.log(req.body); //POST 14 //req.query GET 15 //req.body POST 16 });
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数据实例
- body-parser Node.js(Express) HTTP请求体解析中间件
- body-parser Node.js(Express) HTTP请求体解析中间件
- node.js依赖express解析post请求四种数据格式()
- node的express框架,核心第三方模块body-parser 获取我们所有post请求传过来数据
- 基于node.js依赖express解析post请求四种数据格式
- 基于node.js依赖express解析post请求四种数据格式
- 使用node.js的bodyParser中间件读取post数据解析
- body-parser Node.js(Express) HTTP请求体解析中间件
- 解决Postman发送post数据但是Node.js中req.body接收不到数据的问题
- node.js依赖express解析post请求四种数据格式()
- 解决Postman发送post数据但是Node.js中req.body接收不到数据的问题[已解决]
- node.js 使用 body-parser模块时,传输过来的数据出现undefind的情况
- 微信支付回调node.js版数据解析问题
- node.js 后台解析数据
- ionic+nodejs开发遇到的跨域和post请求数据问题
- Node.js笔记(八)向服务器post数据
- req.body解析post数据出错的问题
- nodejs使用body-parser解析表单数据
- node.js代理转发get和post,拦截指定api下发的自定义数据