问题产生场景:发送请求到萤石平台获取用户token。已经传参但是返回的msg总是提醒缺少appKey。
查了下原因大致就是axios会将传参处理一下,将Content-Type变成application/json;charset=utf-8的,而萤石要求的是application/x-www-form-urlencoded,故萤石后台接受不到参数。
解决方法:使用qs处理一下(将参数转换为query参数)
import qs from 'qs'//axios自带qs,不用额外安装
let data = {
"appKey": "************",
"appSecret": "*********"
}
axios({
method: 'post',
url: '/***',
data: qs.stringify(data)
})
参考:地铁程序员 axios 发 post 请求,后端接收不到参数的解决方案