nodejs body-parser 解析post数据实例

 更新时间:2017年07月26日 07:52:37   投稿:jingxian  
下面小编就为大家带来一篇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数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解析NodeJS异步I/O的实现

    解析NodeJS异步I/O的实现

    本篇文章主要介绍了解析NodeJS异步I/O的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • 在Mac OS上安装使用Node.js的项目自动化构建工具Gulp

    在Mac OS上安装使用Node.js的项目自动化构建工具Gulp

    Gulp是一个在使用上比Grunt更加简洁的自动化工具(文中附有对比),和Node的npm包管理器配合使用非常方便,下面就记录一下在Mac OS上安装使用Node.js的项目自动化构建工具Gulp的方法:
    2016-06-06
  • node.js中的fs.symlink方法使用说明

    node.js中的fs.symlink方法使用说明

    这篇文章主要介绍了node.js中的fs.symlink方法使用说明,本文介绍了fs.symlink的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
    2014-12-12
  • NestJS系列核心概念之Module模块示例详解

    NestJS系列核心概念之Module模块示例详解

    这篇文章主要为大家介绍了NestJS系列核心概念之Module模块示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • node登录生成token并验证的实现

    node登录生成token并验证的实现

    token校验作为项目里的必要项,其重要性不言而喻,本文主要介绍了node登录生成token并验证的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • npm install安装失败报错:The operation was rejected by your operating system

    npm install安装失败报错:The operation was rejected by your 

    这篇文章主要给大家介绍了关于npm install安装失败报错:The operation was rejected by your operating system的相关资料,文中给出了多种解决方法供大家参考学习,需要的朋友可以参考下
    2023-04-04
  • node+express+jade制作简单网站指南

    node+express+jade制作简单网站指南

    上文我们介绍了使用node+express+ejs制作页面,今天我们来看看使用node+express+jade制作简单网站,本文记录了一下整个搭建过程,给需要的小伙伴们参考下吧
    2014-11-11
  • NodeJS实现自定义流的方法

    NodeJS实现自定义流的方法

    在 NodeJS 中要想实现自定义流,需要依赖模块 stream ,直接引入,不需下载,所有种类的流都是继承这个模块内部提供的对应不同种类的类来实现的。接下来通过本文给大家介绍NodeJS实现自定义流的方法,一起看看吧
    2018-08-08
  • Node.js中http模块和导出共享问题

    Node.js中http模块和导出共享问题

    这篇文章主要介绍了Node.js中http模块和导出共享,通过 http 模块提供的 http.createServer() 方法,就能方便的把一台普通的电脑,变成一台 web 服务器,从而对外提供 web 资源服务,本文给大家详细讲解,需要的朋友可以参考下
    2022-10-10
  • Mac OS X 系统下安装和部署Egret引擎开发环境

    Mac OS X 系统下安装和部署Egret引擎开发环境

    之前的文章,我们已经介绍了Windows 系统下安装和部署Egret的开发环境,那么,这篇文档中,我们主要介绍在Mac环境中安装Egret以及部署
    2014-09-09

最新评论