[email protected]/axios如何设置全局拦截器
nuxt.config.js 添加如下两个配置
plugins: [
{src:’~/plugins/axios-plugin’}
],
modules: [
[email protected]/axios’,
],
注意
plugins中引入的axios-plugin.js相关代码
// 相关代码 亲测有效
import axios from 'axios'
axios.defaults.withCredentials = true// 跨域处理 允许携带cookie
export default function ({
$axios, redirect }) {
//正常请求返回处理
$axios.onRequest(config => {
})
//错误请求返回处理
$axios.onError(error => {
const code = parseInt(error.response && error.response.status)
switch (code) {
//错误代码
case 401:
sessionStorage.clear();
redirect('/login')
break;
case 403:
sessionStorage.clear();
redirect('/login')
break;
case 404:
sessionStorage.clear();
break;
case 500:
Message.error("Server exception");
break;
case 502:
Message.error("Bad Gateway");
break;
case 503:
Message.error(error.message);
break;
case 504:
Message.error(error.message);
break;
default:
break;
}
})
}
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/1731.html