From cd612ab24d7c8a8af26f4374a1fc6d69fb5e7e6f Mon Sep 17 00:00:00 2001 From: Noa Virellia Date: Sat, 7 Feb 2026 17:12:12 +0800 Subject: [PATCH] feat(auth): add abort controller for refresh interruption Signed-off-by: Noa Virellia --- client/cms/src/lib/token.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/client/cms/src/lib/token.ts b/client/cms/src/lib/token.ts index d491945..1f7a16d 100644 --- a/client/cms/src/lib/token.ts +++ b/client/cms/src/lib/token.ts @@ -35,16 +35,20 @@ export function clearTokens() { removeRefreshToken(); } +const refreshTokenAbortController = new AbortController(); + export async function doRefreshToken(refreshToken: string): Promise { const { data } = await postAuthRefresh({ body: { refresh_token: refreshToken, }, + signal: refreshTokenAbortController.signal, }); return data?.data; } export function logout(message: string = '已登出') { + refreshTokenAbortController.abort(); clearTokens(); void router.navigate({ to: '/authorize' }).then(() => { toast.info(message);