From 2f0b9b652cf4994ca684594dd01f334abaff9616 Mon Sep 17 00:00:00 2001 From: mayiming <1627832236@qq.com> Date: Mon, 27 Oct 2025 17:21:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=AF=B7=E6=B1=82request?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- management/src/utils/request.ts | 41 +++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 management/src/utils/request.ts diff --git a/management/src/utils/request.ts b/management/src/utils/request.ts new file mode 100644 index 00000000..9096e5af --- /dev/null +++ b/management/src/utils/request.ts @@ -0,0 +1,41 @@ +import axios from 'axios'; + +// 从环境变量中获取基础地址 +const baseURL = import.meta.env.VITE_API_BASE_URL; + +// 创建 Axios 实例 +const request = axios.create({ + baseURL, // 自动拼接基础地址 + timeout: 5000, // 超时时间 + headers: { + 'Content-Type': 'application/json' + } +}); + +// 请求拦截器(可选,可添加 token 等) +request.interceptors.request.use( + (config) => { + // 示例:添加认证 token + // const token = localStorage.getItem('token'); + // if (token) { + // config.headers.Authorization = `Bearer ${token}`; + // } + return config; + }, + (error) => { + return Promise.reject(error); + } +); + +// 响应拦截器(可选,统一处理错误) +request.interceptors.response.use( + (response) => { + return response.data; // 直接返回响应体中的 data + }, + (error) => { + console.error('请求错误:', error); + return Promise.reject(error); + } +); + +export default request; \ No newline at end of file