axios二次封装
作者:互联网
1 import axios from 'axios' 2 3 // 定义常见的错误 4 const TOKEN_ERROR = 'token认证失败,请重新登录' 5 const NETWORK_ERROR = '网络异常,请检查网络后重试' 6 7 // 创建axios实例 8 // let baseUrl = '/' 9 // if (process.env.NODE_ENV === 'production') { // 开发环境下的地址 10 // baseUrl = 'loaclhost:3000' 11 // } else if (process.env.NODE_ENV === 'development') { // 上线环境下的地址 12 // baseUrl = 'www.qichawang.cn' 13 // } 14 15 const server = axios.create({ 16 baseURL: baseUrl, 17 timeout: 10000 18 }) 19 20 // 拦截器 -> 请求前先拦截进行操作判断 21 server.interceptors.request.use((config) => { 22 // 根据需求判断是否token验证 23 if (config.headers.token === true) { 24 // 进行token验证操作 25 } 26 return config 27 // 必须返回才会执行下一步 28 }, (error) => { 29 return Promise.resolve(error) 30 }) 31 32 // 响应拦截器 33 server.interceptors.response.use((response) => { 34 // 例如 针对不同的状态码进行判断 35 if (response.data.code === 400) { 36 return response.data.msg 37 } 38 }, (error) => { 39 40 }) 41 42 /* 43 为什么要封装 44 - 根据状态码判断 45 - token携带判断 46 - 方便 47 48 */ 49 50 export default server
标签:axios,封装,二次,baseUrl,server,token,return,response 来源: https://www.cnblogs.com/tmccjs/p/16495736.html