当前位置: 首页 > news >正文

vite,Vue3,ts项目关于axios配置

一、安装依赖包

npm install axios -S

npm install qs -S

npm install js-cookie

文件目录

二、配置线上、本地环境

与src文件同级,分别创建本地环境文件 .env.development 和线上环境文件 .env.production

 # 本地环境
ENV = development

# 本地环境接口地址
VITE_API_URL = http://localhost:3000

# 本地环境接口地址
VITE_API_URL2 = 

# 线上环境
ENV = production

# 线上环境接口地址
VITE_API_URL = 

# 线上环境接口地址
VITE_API_URL2 = http://jsonplaceholder.typicode.com

三、配置请求文件 src/api/base.ts

import axios from 'axios'
import qs from 'qs'
import { Dialog } from 'vant'
import { Session } from '../utils/storage'

// 创建 Axios 实例
const instance = axios.create({
  // baseURL: 'https://api.uomg.com/api', // 替换为你的 API 基础路径
  timeout: 10000, // 请求超时时间(单位:毫秒)
  headers: {
    'Content-Type': 'application/json',
  },
  paramsSerializer: {
    serialize(params) {
      return qs.stringify(params, { allowDots: true })
    },
  },
})
// 配置多个baseurl
instance.interceptors.request.use(
  (config: any) => {
    if (config.url.startsWith('/url3')) {
      config.baseURL = import.meta.env.VITE_API_URL2
    } else {
      config.baseURL = import.meta.env.VITE_API_URL
    }
    return config
  },
  (error) => {
    return Promise.reject(error)
  },
)

// 请求拦截器(不需登录校验)
instance.interceptors.request.use(
  (config) => {
    // 在发送请求之前做些什么,比如添加 token
    const token = localStorage.getItem('token') // 示例:从本地存储获取 token
    if (token && config.headers) {
      config.headers.Authorization = `Bearer ${token}`
    }
    return config
  },
  (error) => {
    // 处理请求错误
    return Promise.reject(error)
  },
)

// 响应拦截器(不需登录校验)
instan

相关文章:

  • asm汇编源代码之文件操作相关
  • sql server 字段逗号分割取后面的值
  • Socket 编程中的基本步骤
  • OSPF的接口网络类型【复习篇】
  • Unity 动画
  • Linux中的tar -P选项
  • Linux中安装sentinel
  • nodejs/node-sass/sass-loader三者版本对应关系
  • 基于疾风大模型的新能源储能优化系统:方法、实现与案例分析
  • Python——numpy测试题目
  • Linux--进程间通信
  • C# --- yield关键字 和 Lazy Execution
  • 英语学习4.11
  • C#MQTT协议服务器与客户端通讯实现(客户端包含断开重连模块)
  • Day 8 上篇:深入理解 Linux 驱动模型中的平台驱动与总线驱动
  • JS实现文件点击或者拖拽上传
  • Sql with as 语句
  • 重读《人件》Peopleware -(6)Ⅰ管理人力资源Ⅴ-帕金森定律重探 Parkinson’s Law Revisited
  • [算法题:快排(一)]颜色分类
  • 【unity游戏开发介绍之UGUI篇】UGUI概述和基础使用
  • wordpress分页目录编辑/成都网站快速优化排名
  • 做网站用啥软件/app拉新推广平台代理
  • win2012 wordpress/网站搜索引擎优化
  • 一个公司做多个网站是好还是坏/广东seo推广外包
  • 国外做地铁设计的公司网站/网络营销专业是干嘛的
  • 网站设计师培训学校/哪个平台可以买卖链接