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');
});

猜你喜欢

转载自www.cnblogs.com/LChenglong/p/11776868.html