在Vue项目中用axios发送post请求时报错。代码如图

在网上查询了很多出现Provisional headers are shown提示可能的原因。

chrome广告拦截插件拦截?换了个浏览器、关闭广告拦截插件一样提示Provisional headers are shown,排除。

最后发现是参数对象格式不对,参数对象应该用qs.stringify转换一下格式。qs是axios里面自带的,不用特意安装使用

直接import引入使用就可以了。

import qs from 'qs'

const params = {
    number: this.codeInput,
    code: this.jihuoCode
}

axios.post("http://*******/addCard", qs.stringify(params)).then(response => {
    // do something
})

为了避免每次调用post请求都要qs格式化代码。最好针对axios二次封装一个post 函数。这样就不用每次post请求都要qs.stringify格式化请求参数。

PS:这就是我在Vue中用axios的post出现Provisional headers are shown的原因以及解决方案。但是出现Provisional headers are shown的情况远远不止这一种原因,其他原因大家就再看看其他的博客。

Logo

前往低代码交流专区

更多推荐