发现提示参数错误,看了一下netWork,确实不是标准的form表单的格式。
这是出错的代码截图
出错代码截屏
在header中直接进行赋值,这样看起来不行的。
然后检查发送内容
network
emmm...不太对劲
看来是需要规范下form表单的发送格式。
在网上找了一下,现在一般有两种方法
-
transformRequest
利用axios中的transformRequest属性,在发送之前进行编辑,给他拼成一个form表单的形式 -
qs
引用qs模块,用的时候 qs.stringify(data.data)
最后我两种都没用。
第一种兼容性不要太差,IE不支持;
第二种还得下插件,神烦...
于是就想到了基础的表单提交,于是就有了本文的第三种方法:
export default function (data){
let formData = new FormData(); //new 一个formData对象
Object.keys(data.data).forEach(t=>{ //遍历传递进来的参数
formData.append(t,data.data[t]) //依次给formData追加
})
return instance({
method: data.method|| 'GET',
url: data.url,
parmas:data.parmas || '',
data:formData, //回填数据
headers: data.headers
})
}
以上,如果有帮到你请点个赞吧!
本文结束。
网友评论