nodeJs学习-07 express、body-parser;链式操作next

时间:2023-03-09 02:47:49
nodeJs学习-07 express、body-parser;链式操作next

express和body-parser  

const express=require('express');
const bodyParser=require('body-parser'); var server=express();
server.listen(8080);
/*等价于body-parser,原理
server.use(function (req, res, next){ //所有访问都会执行
var str='';
req.on('data', function (data){
str+=data;
});
req.on('end', function (){
req.body=querystring.parse(str); next();
});
});
*/

// 使用bodyParser,否则server中req.body无值
server.use(bodyParser.urlencoded({
extended: false, //扩展模式是否启用
limit: 2*1024*1024 //限制-2M post数据大小
})); server.use('/', function (req, res){
console.log(req.query); //接收get数据
console.log(req.body); //接收post数据,必须使用body-parser之后,才能获取到
}); //req.query GET
//req.body POST

GET请求无需中间件 req.query

POST请求需要中间件body-parser

链式操作next

const express=require('express');
const bodyParser=require('body-parser'); var server=express();
server.listen(8080); server.use('/', function (req, res, next){
console.log('a'); next();
}); server.use('/', function (req, res, next){
console.log('b');
});