Postman在进行post请求的时候一直返回undefined的解决方案

1.postman

最近因为在学node,会编写一些路由,在测试接口的时候经常使用的是路由器来访问接口,这样就不太方便,postman就可以比较好的解决这些问题,而且如果你要是测试一些数据,也可以在postman里面进行测试。

2.postman的post请求测试

2.1 解决方式1

2.1.1 在项目中安装并引入body-parser

body-parser是解析req.body的,所以一定要装,如果装好了问题解决了,就不用往下了。

//安装body-parser
cnpm i body-parser --save
//引入
const bodyParser = require("body-parser");
//挂载body-parser
//要注意body-parser在项目代码中的挂载位置
//应该挂载的位置是:在使用路由之前
//项目入口文件会挂载我们编写好的路由,就是放在这些路由的前面
//示例:
const app = express();//实例化express
app.use(bodyParser.urlencoded({extended:false}));
app.use(bodyParser.json());
//使用routes
app.use("/api/users",users);

2.1.2 为什么要在路由之前挂载body-parser

因为在路由里面就已经涉及到有req.body的操作了,代码是从上往下顺序执行的,如果在路由之后进行挂载,就会导致路由里面没有办法进行body-parser的操作,就自然没有办法解析req.body了;

2.1 解决方式2

2.2.1 设置postman

在这里插入图片描述

在postman的 header部分设置对应的header再发送请求,value要根据自己的代码选择对应的格式。

问题大体就是这样解决的,我最开始使用了第二种,但还是一直返回undefined,所以就想试试看是不是代码执行顺序的问题,结果还真是,记下来,今天又是和bug斗争的一天。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值