ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

axios二次封装

2022-07-19 21:00:46  阅读:158  来源: 互联网

标签:axios 封装 二次 baseUrl server token return response


 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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有