From 1ea87972bd8f3e4389d0b55a9734e551e023c53b Mon Sep 17 00:00:00 2001 From: hanqin Date: Tue, 21 Apr 2026 15:51:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=98=BE=E7=A4=BA404?= =?UTF-8?q?=E7=9A=84=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Build_God_Game/src/api/index.ts | 51 ++++++++++++++++++--------------- 1 file changed, 28 insertions(+), 23 deletions(-) diff --git a/Build_God_Game/src/api/index.ts b/Build_God_Game/src/api/index.ts index f48556c..a763238 100644 --- a/Build_God_Game/src/api/index.ts +++ b/Build_God_Game/src/api/index.ts @@ -1,44 +1,49 @@ -import axios from 'axios' +import axios from "axios"; const instance = axios.create({ - baseURL: import.meta.env.VITE_API_URL || 'http://localhost:5091/api/god/', + baseURL: import.meta.env.VITE_API_URL || "http://localhost:5091/api/god/", timeout: 10000, headers: { - 'Content-Type': 'application/json' - } -}) + "Content-Type": "application/json", + }, +}); instance.interceptors.request.use( (config) => { - const token = localStorage.getItem('auth_token') + const token = localStorage.getItem("auth_token"); if (token) { - config.headers.Authorization = `Bearer ${token}` + config.headers.Authorization = `Bearer ${token}`; } - return config + return config; }, - (error) => Promise.reject(error) -) + (error) => Promise.reject(error), +); instance.interceptors.response.use( (response) => response.data, (error) => { if (error.response?.status === 401) { - localStorage.removeItem('auth_token') - localStorage.removeItem('user') - window.location.href = '/login' + localStorage.removeItem("auth_token"); + localStorage.removeItem("user"); + window.location.href = "/login"; } - if (error.code === 'ERR_NETWORK' || error.code === 'ECONNABORTED' || !error.response) { - window.location.href = '/404' + if (error.response?.status === 404) { + window.location.href = "/404"; } - const responseData = error.response?.data - if (typeof responseData === 'string') { - return Promise.reject({ data: responseData, message: responseData }) + const responseData = error.response?.data; + if (typeof responseData === "string") { + return Promise.reject({ data: responseData, message: responseData }); } if (responseData?.message) { - return Promise.reject({ data: responseData.message, message: responseData.message }) + return Promise.reject({ + data: responseData.message, + message: responseData.message, + }); } - return Promise.reject(error.response?.data || { data: error.message, message: error.message }) - } -) + return Promise.reject( + error.response?.data || { data: error.message, message: error.message }, + ); + }, +); -export default instance +export default instance;