nodejs body-parser 解析post数据
安装
$ 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数据的更多相关文章
- iOS关于XML解析请求数据
XML数据的请求: 和json请求几乎一样,只有请求参数修改为xml即可: AFHTTPSessionManager *manager = [AFHTTPSessionManager manager] ...
- iOS解析XML数据
iOS中解析XML数据的类是 NSXMLParser,详细使用方法如下: 假设现在在内存中有XML的二进制数据对象(NSData):data(该数据可能来自网络,也可能是本地的文件数据),设置NSX ...
- Android网络之数据解析----SAX方式解析XML数据
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- EasyUI基础入门之Parser(解析器)
前言 JQuery EasyUI提供的组件包含功能强大的DataGrid,TreeGrid.面板.下拉组合等.用户能够组合使用这些组件,也能够单独使用当中一个.(使用的形式是以插件的方式提供的) Ea ...
- Expat Parser解析xml文件
Expat 解析器是基于事件的解析器. 基于事件的解析器集中在 XML 文档的内容,而不是它们的结构.正因为如此,基于事件的解析器能够比基于树的解析器更快地访问数据. 请看下面的 XML 片段: &l ...
- 四种方法解析JSON数据
(1)使用TouchJSon解析方法:(需导入包:#import "TouchJson/JSON/CJSONDeserializer.h") //使用TouchJson来解析北京的 ...
- (四)SAX方式解析XML数据
SAX方式解析XML数据 文章来源:http://www.cnblogs.com/smyhvae/p/4044170.html 一.XML和Json数据的引入: 通常情况下,每个需要访问网络的应用程 ...
- 【Android Developers Training】 81. 解析XML数据
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- EasyUI Parser 解析器
Parser(解析器)应用场景 1,自动调用parser 只要我们书写相应的class,easyui就能成功的渲染页面,这是因为解析器在默认情况下,会在dom加载完成的时候($(docunment). ...
- nodejs模块xml2js解析xml的坑
在一个项目中,用到nodejs模块xml2js解析xml,xml的数据如下: <xml> <MsgId>6197906553041859764</MsgId> &l ...
随机推荐
- Redis安装完整步骤
安装: 1.获取redis资源 wget http://download.redis.io/releases/redis-4.0.8.tar.gz 2.解压 tar xzvf redis-4.0.8. ...
- 干货分享: 长达150页的openvswitch的ppt,不实验无真相
下载链接: Openvswitch实验教程 http://files.cnblogs.com/popsuper1982/Openvswtich.pptx 一.概论 Software Defined N ...
- Openssl的证书操作
先假设自己是一个CA,而且是一个root CA,Cliu8CA 生成一个CA的private key openssl genrsa -out caprivate.key 1024 当然可以跟密码 op ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(二十):使用菜单消息功能
在<Senparc.Weixin.MP SDK 微信公众平台开发教程(十一):高级接口说明>教程中,我们介绍了如何使用“客服接口”,即在服务器后台,在任意时间向微信发送文本.图文.图片等不 ...
- Vmware安装Ubuntu ==> 连网成功
由于工作需要,得把NS3安装到内网服务器中,大家知道这个是不能连接外网的,学校又没有Ubuntu高校源.NS3要先安装一大堆的依赖,让人头痛的是在内网里有没发以终端指令形式安装,针对这种麻烦,找到两个 ...
- 优化之Normalizer组件
Normalizer会产生记录,尽可能的将Normalizer组件靠近Target ---------------------------------------------------------- ...
- 【spring】静态资源的访问受限解决方法
前言 我们知道在整合spring mvc框架的时候需要在web.xml中配置一个servlet 代码如下 <!--spring mvc 的DispatcherServlet--> < ...
- jupyter-notebook后home页面空白问题
jupyter-notebook后home页面空白问题 解决方案1 更换默认的浏览器,选择谷歌浏览器,很多360打不开的页面,更换谷歌后都能有效解决,并且确保是最新版本的google浏览器. 解决 ...
- PyCharm证书过期:Your license has expired
报错“your evaluation license has expired, pycharm will now exit”1.解决步骤,点击‘Activation code’,授权激活pycharm ...
- ASP.NET Core 系列目录
目录: ASP.NET Core 2.0 : 一. 概述 ASP.NET Core 2.0:二. 开发环境 ASP.NET Core 2.0 : 三. 项目结构 ASP.NET Core 2.0 : ...