From c32e49174840847cfcbc14693bdb05dfffcd3e63 Mon Sep 17 00:00:00 2001 From: shay7sev Date: Tue, 10 Feb 2026 14:43:36 +0800 Subject: [PATCH] fix(token): refresh --- src/proxy.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/proxy.ts b/src/proxy.ts index 92529fa..349c877 100644 --- a/src/proxy.ts +++ b/src/proxy.ts @@ -66,8 +66,21 @@ export function proxy(req: NextRequest) { } const accessToken = req.cookies.get("accessToken")?.value ?? ""; + const refreshToken = req.cookies.get("refreshToken")?.value ?? ""; if (!accessToken || isExpired(accessToken)) { + if (refreshToken) { + // 尝试刷新 token + const next = encodeURIComponent(currentUrl.toString()); + if (cmsServiceBaseUrl) { + // 跳转到 cms-service 的 refresh 接口,由它完成刷新并重定向回来 + const refreshUrl = `${cmsServiceBaseUrl}/auth/refresh?token=${encodeURIComponent( + refreshToken, + )}&next=${next}`; + return NextResponse.redirect(refreshUrl, 302); + } + } + if (!tenantId) { const url = req.nextUrl.clone(); url.pathname = "/tenant-required";