在vue-cli搭建的项目中在后台mock接口中支持req.body和req.cookies

《vue-cli搭建的项目中增加后台mock接口》中实现了后台mock,但是前端post的t数据都要在mock的后台接口中使用req的接收数据事件获取http协议body中的数据。

req.on('data', function(chunk){
//接收字节数据
}); req.end('data', function(){
//转换||处理
}); req.error('error', function(e){
//处理错误
});

如果前端需要使用cookie,后端要读取,那么在后台mock的接口中还要获取req的headers,并从中取得cookie字符串,自己还要分割处理等等。

当然这样是可以的,但是比较麻烦,从接收数据到转换都要自己做。

vue-cli搭建的项目是用express作为node.js的web框架,它支持丰富的中间件。

对应上述问题,有body-parser和cookie-parser中间件可以方便地将post的body中的数据和cookie自动提取成req.body和req.cookies对象供人使用,非常方便。

安装中间件

npm install body-parser --save-dev

npm install cookie-parser --save-dev

引入中间件

在build/dev-server.js文件中的头部require区域末尾增加中间件require。

  var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');

然后再紧接着var app = express()之后添加中间件调用。

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());

bodyParser的两行调用方式就是分别针对content-type是‘application/json’和'application/x-www-form-urlencoded'两种设置。

添加完成后就可以方便使用了。

End

上一篇:数字图像处理学习笔记之一 DIP绪论与MATLAB基础


下一篇:ROS_Kinetic_09 ROS基础内容(四)