当前位置: 首页 > 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
http://www.dtcms.com/a/128822.html

相关文章:

  • 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概述和基础使用
  • ThingsBoard3.9.1 MQTT Topic(1)
  • Apollo源码总结
  • 寻找峰值 --- 二分查找
  • 主流开源大模型评估数据集
  • 【工具】Fiddler抓包
  • 本地部署大模型(ollama模式)
  • 【Code】《代码整洁之道》笔记-Chapter13-并发编程
  • 机械臂只有位置信息是否可以进行手眼标定?
  • HDF5文件格式:数据类型与读写功能详解
  • asm汇编源代码之CPU型号检测