From 119fb96767657b597eba892e1e82d7b54144de96 Mon Sep 17 00:00:00 2001 From: carry <2641257231@qq.com> Date: Fri, 14 Feb 2025 23:14:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E8=AF=B7=E6=B1=82=E6=8B=A6?= =?UTF-8?q?=E6=88=AA=E5=99=A8=E4=BB=A3=E7=A0=81=EF=BC=8C=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E4=BB=8Epinia=E4=B8=AD=E8=AF=BB=E5=8F=96=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/axiosInstance.ts | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/src/api/axiosInstance.ts b/src/api/axiosInstance.ts index 0350ea3..eac2538 100644 --- a/src/api/axiosInstance.ts +++ b/src/api/axiosInstance.ts @@ -1,5 +1,5 @@ import axios from 'axios'; -import { authService } from './authService'; +import { useAuthStore } from '../store/userStore'; // 创建axios实例 const apiClient = axios.create({ @@ -12,8 +12,8 @@ const apiClient = axios.create({ // 请求拦截器 apiClient.interceptors.request.use( async (config) => { - // 从localStorage获取access_token - const accessToken = localStorage.getItem('access_token'); + const store = useAuthStore(); + const accessToken = store.accessToken; if (accessToken) { config.headers.Authorization = `Bearer ${accessToken}`; @@ -37,21 +37,11 @@ apiClient.interceptors.response.use( originalRequest._retry = true; try { - // 获取refresh_token - const refreshToken = localStorage.getItem('refresh_token'); - if (!refreshToken) { - throw new Error('No refresh token available'); - } - - // 刷新token - const { access_token, refresh_token } = await authService.refreshToken(refreshToken); - - // 保存新token - localStorage.setItem('access_token', access_token); - localStorage.setItem('refresh_token', refresh_token); + const store = useAuthStore(); + await store.refreshTokenMethod(); // 重试原始请求 - originalRequest.headers.Authorization = `Bearer ${access_token}`; + originalRequest.headers.Authorization = `Bearer ${store.accessToken}`; return apiClient(originalRequest); } catch (refreshError) { // 刷新token失败,跳转到登录页