axios 发 post 请求,后端接收不到参数的解决方案

很简单的需求:

axios({
    headers: {
        'deviceCode': 'A95ZEF1-47B5-AC90BF3'
    },
    method: 'post',
    url: '/api/lockServer/search',
    data: {
        username: username,
        pwd: pwd
    }
})

后台得不到我们传过去的

是因为axios会帮我们 转换请求数据和响应数据 以及 自动转换 JSON 数据 ,它将我们的 Content-Type 变成了 application/json;charset=utf-8 

所以会出问题

 

解决方案:

import Qs from 'qs' //axios中自带的模块
axios({
    url: '/api/lockServer/search',
    method: 'post',
    transformRequest: [function (data) {
        // 对 data 进行任意转换处理
        return Qs.stringify(data)
    }],
    headers: {
        'content-type': 'application/x-www-form-urlencoded',
    },
    data: {
        username: 'admin',
        pwd: 'admin'
    }
})

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值