zoukankan      html  css  js  c++  java
  • 在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

  • 相关阅读:
    Mysql 一主两从架构转换成级联复制
    redis安装配置
    SQL语句中----删除表数据drop、truncate和delete的用法
    编译安装apache2.4.28错误
    zabbix3.2.5编译安装部署
    Keepalived 高可用集群实践
    sersync+rsync实时同步备份部署
    LINE学习
    DeepWalk学习
    csv文件的读取
  • 原文地址:https://www.cnblogs.com/kongxianghai/p/7072424.html
Copyright © 2011-2022 走看看