vue process.env.VUE_APP_BASE_API的相关配置及axios简朴封装

张裕  金牌会员 | 2024-9-12 10:21:38 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 452|帖子 452|积分 1356

1、根目次底下新建.env.dev和env.prod,内容如下:

  1. VUE_APP_BASE_API = 'http://192.168.1.xx:xxx'
复制代码
2、vue.config相关内容:

  1. devServer: {
  2.         hot: true, //热加载
  3.         host: '0.0.0.0',
  4.         port: 8080, //端口
  5.         // https: false, //false关闭https,true为开启
  6.         // open: true, //自动打开浏览器
  7.         proxy: {
  8.             // 在此处为需要解决跨域的 API 配置代理
  9.             '/api': {
  10.                 target: process.env.VUE_APP_BASE_API,
  11.                 changeOrigin: true,
  12.                 rewrite: path => path.replace(/^\/api/, '') // 去掉 /api 前缀
  13.             }
  14.         }
  15.     }
复制代码
3、package.json内容修改如下

  1.   "scripts": {
  2.     "serve": "vue-cli-service serve --mode dev",
  3.     "build": "vue-cli-service build --mode prod",
  4.     "lint": "vue-cli-service lint"
  5.   },
复制代码
5、axios封装

  1. import axios from 'axios'
  2. const service = axios.create({
  3.     baseURL: process.env.VUE_APP_BASE_API,
  4.     timeout: 5000
  5. })
  6. // console.log(process.env.VUE_APP_BASE_API)
  7. // 请求拦截器
  8. service.interceptors.request.use(
  9.     config => {
  10.         // 添加请求头等前置处理
  11.         config.headers['Authorization'] = 'Bearer' + ' ' + localStorage.getItem('token')
  12.         return config
  13.     },
  14.     error => {
  15.         // 请求错误处理
  16.         console.log('Request Error:', error)
  17.         return Promise.reject(error)
  18.     }
  19. )
  20. // 响应拦截器
  21. service.interceptors.response.use(
  22.     response => {
  23.         // 响应后处理
  24.         if (response.status === 200 && response.data.code === 200) {
  25.             return Promise.resolve(response.data.data)
  26.         } else {
  27.             return Promise.reject(response.data)
  28.         }
  29.     },
  30.     error => {
  31.         console.log('Response Error:', error)
  32.         return Promise.reject(error)
  33.     }
  34. )
  35. export default service
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张裕

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表