axios 统一配置参数,为什么无效?
希望无论是get还是post请求,都会携带userID信息。所以就把post请求的统一参数写在了config.data里,get的统一参数写在了get里。
但是!!问题来了, ...config.params
并不会合并参数。
具体代码如下。
Axios.interceptors.request.use(
(config) => {
if ( config.method === 'post' ) {
if (sessionStorage.getItem('fwqAdmin')) {
config.data = querystring.stringify({
userId: JSON.parse(sessionStorage.getItem('fwqAdmin')).userId,
...config.data
});
console.log(config);
}
} else if ( config.method === 'get' ) {
if (sessionStorage.getItem('fwqAdmin')) {
config.params = {
userId: JSON.parse(sessionStorage.getItem('fwqAdmin')).userId,
...config.params
};
}
}
config.headers.Authorization = sessionStorage.getItem('fwqAdmin') ? JSON.parse(sessionStorage.getItem('fwqAdmin')).accessToken : '';
return config;
},
error => {
console.log(error);
return Promise.reject('请求拦截报错信息' + error);
}
);
具体使用:
requestWxList() {
let params = {
pageNum: this.pageNav.curPage,
pageSize: this.pageNav.pageSize
};
this.$http.get('/result/listSummarysPage',params)
.then((res) => {
console.log(res);
this.tableData = res.data.data.items;
this.pageNav.total = res.data.data.total;
})
.catch((err) =>{
console.log(err);
});
},
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
给你看一下
axios
源码get
请求的第二个参数是config
你把
params
当成config
传进去config.params
并没有值应该这样调用
this.$http.get('/result/listSummarysPage',{ params: params })
楼上的老哥们已经给出了正确的答案,但是只能采纳一个答案,抱歉了... 希望答案能帮助后来的人。。 谢谢各位