import { BASE_API_URL, TOKEN_NAME } from '@/constant'; import { message } from 'ant-design-vue'; import axios from 'axios'; import nprogress from 'nprogress'; import 'nprogress/nprogress.css'; import router from '@/router'; const service = axios.create({ timeout: 120000, baseURL: BASE_API_URL, }); service.interceptors.request.use( (config: any) => { nprogress.start(); let token = localStorage.getItem(TOKEN_NAME); if (token) { config.headers.Authorization = token; } return config; }, err => { nprogress.done(); return Promise.reject(err); } ); service.interceptors.response.use( response => { nprogress.done(); if (response.data && response.data.code == 401) { localStorage.clear(); router.replace('/login'); } return response.data; }, error => { const { status } = error.response; nprogress.done(); if (status == 401) { message.destroy(); message.warning('用户身份失效'); localStorage.clear(); } return Promise.reject(error); } ); export default service;
正文
axios通用拦截器封装
文章版权声明:除非注明,否则均为
譬如朝露_策温技术开发工作室博客原创文章,转载或复制请以超链接形式并注明出处。
发表评论
侧栏公告
寄语
譬如朝露博客是一个分享前端知识的网站,联系方式11523518。
热评文章
标签列表
热门文章
友情链接