參考文章:
https://www.cnblogs.com/qiuchuanji/p/10048805.html
https://www.cnblogs.com/XHappyness/p/9993878.html
代碼示例:
import axios from 'axios' // 創建一個axios實例 const service = axios.create({ // headers: { // 'content-type': 'application/json;charset=UTF-8', // 'token': 'one' // }, baseURL: 'http://dianphp.fyz.com', withCredentials: true, timeout: 5000 }) // 添加請求攔截器 service.interceptors.request.use(config => { // 在發送請求之前做某事,比如說 設置token // config.headers['token'] = 'token'; config.headers['X-Token'] = 'xxxxxxxxxxxxxxxxxxx'; return config; }, error => { // 請求錯誤時做些事 return Promise.reject(error); }); // 添加響應攔截器 service.interceptors.response.use(response => { const res = response.data; // 如果返回的狀態不是200 就主動報錯 if(res.state != 200){ return Promise.reject(res.message || 'error') } return response; }, error => { return Promise.reject(error.response.data); // 返回接口返回的錯誤信息 }) export default service