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中使用monk访问mongodb
Jul 06 NodeJs
nodejs教程之入门
Nov 21 NodeJs
Nodejs进阶:核心模块net入门学习与实例讲解
Nov 21 NodeJs
Nodejs下用submit提交表单提示cannot post错误的解决方法
Nov 21 NodeJs
详解nodejs中的process进程
Mar 19 NodeJs
初识NodeJS服务端开发入门(Express+MySQL)
Apr 07 NodeJs
nodejs中sleep功能实现暂停几秒的方法
Jul 12 NodeJs
详解Nodejs mongoose
Jun 10 NodeJs
nodejs异步编程基础之回调函数用法分析
Dec 26 NodeJs
typescript nodejs 依赖注入实现方法代码详解
Jul 21 NodeJs
NodeJS有难度的面试题(能答对几个)
Oct 09 NodeJs
Nodejs在局域网配置https访问的实现方法
Oct 17 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入门速成教程
2007/03/19 PHP
php中iconv函数使用方法
2008/05/24 PHP
php计划任务之验证是否有多个进程调用同一个job的方法
2015/12/07 PHP
Symfony2学习笔记之插件格式分析
2016/03/17 PHP
How to Auto Include a Javascript File
2007/02/02 Javascript
javascript 程序库的比较(一)之DOM功能
2010/04/07 Javascript
javascript Window及document对象详细整理
2011/01/12 Javascript
jQuery Ajax异步处理Json数据详解
2013/11/05 Javascript
用javascript读取xml文件读取节点数据
2014/08/12 Javascript
javascript使用正则获取url上的某个参数
2014/09/04 Javascript
javascript鼠标滑动评分控件完整实例
2015/05/13 Javascript
javascript实现Table排序的方法
2015/05/15 Javascript
javascript实现鼠标放上后下边对应内容变换的效果
2015/08/06 Javascript
mvvm双向绑定机制的原理和实现代码(推荐)
2016/06/07 Javascript
图片懒加载imgLazyLoading.js使用详解
2020/09/15 Javascript
element-ui 表格数据时间格式化的方法
2018/08/24 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
2018/09/17 Javascript
转换layUI的数据表格中的日期格式方法
2019/09/19 Javascript
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
[02:37]TI8勇士令状不朽珍藏II视频展示
2018/06/23 DOTA
使用cx_freeze把python打包exe示例
2014/01/24 Python
零基础写python爬虫之爬虫框架Scrapy安装配置
2014/11/06 Python
插入排序_Python与PHP的实现版(推荐)
2017/05/11 Python
django模型层(model)进行建表、查询与删除的基础教程
2017/11/21 Python
matplotlib中legend位置调整解析
2017/12/19 Python
基于python神经卷积网络的人脸识别
2018/05/24 Python
基于scrapy的redis安装和配置方法
2018/06/13 Python
python实现回旋矩阵方式(旋转矩阵)
2019/12/04 Python
jupyter使用自动补全和切换默认浏览器的方法
2020/11/18 Python
python3爬虫中引用Queue的实例讲解
2020/11/24 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
2021/01/30 Python
警察正风肃纪剖析材料
2014/10/16 职场文书
城南旧事电影观后感
2015/06/16 职场文书
2015年幼儿园国庆节活动总结
2015/07/30 职场文书
关于空气污染危害的感想
2015/08/11 职场文书
详解CSS中的特指度和层叠问题
2021/07/15 HTML / CSS