axios post请求后台获取不到参数

使用vue开发项目,ajax打算使用axios(听说很牛逼,就想试试)。结果发现post请求后台获取不到参数。

代码如下:

axios. post( '/v1/card/info', {
                        cardNo: this.iccid,
                        loading: true,
                    }). then( resp => {
                         if (resp.data.success) {
                            window.location.href = './detail.html'
                        }
                    })


1、将axios换成jQuery,获取参数没有,所以应该是axios某个设置有问题

2、观察axios请求

axios:


很明显axios请求的Content-Type为application-json,所以后台接收不到


解决方案:

这篇文章给出了三种方案:https://segmentfault.com/a/1190000012635783

我使用的是第三种方案,使用qs对参数进行处理

文章中在post请求的时候使用qs.stringify(param),对参数进行处理,这样做每个post请求都需要这样处理,虽然没有问题,但是感觉还是有些别扭,而且每次post请求都需要处理。翻阅axios使用手册时发现axios有拦截器功能,所以就尝试能不能使用拦截器处理,结果证明是可以的。代码如下:


这样再次请求数据就正常了


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值