diff --git a/examples/common_nestjs_remix/apps/api/src/app.module.ts b/examples/common_nestjs_remix/apps/api/src/app.module.ts index 6810e44..1cbcdbc 100644 --- a/examples/common_nestjs_remix/apps/api/src/app.module.ts +++ b/examples/common_nestjs_remix/apps/api/src/app.module.ts @@ -40,10 +40,7 @@ import { StagingGuard } from "./common/guards/staging.guard"; return { secret: configService.get("jwt.secret")!, signOptions: { - expiresIn: configService.get( - "JWT_EXPIRATION_TIME", - "15min", - ), + expiresIn: configService.get("jwt.expirationTime"), }, }; }, diff --git a/examples/common_nestjs_remix/apps/api/src/auth/auth.service.ts b/examples/common_nestjs_remix/apps/api/src/auth/auth.service.ts index 091e1d3..0c9ff7e 100644 --- a/examples/common_nestjs_remix/apps/api/src/auth/auth.service.ts +++ b/examples/common_nestjs_remix/apps/api/src/auth/auth.service.ts @@ -137,7 +137,7 @@ export class AuthService { this.jwtService.signAsync( { userId, email }, { - expiresIn: "15m", + expiresIn: this.configService.get("jwt.expirationTime"), secret: this.configService.get("jwt.secret"), }, ), diff --git a/examples/common_nestjs_remix/apps/web/app/api/api-client.ts b/examples/common_nestjs_remix/apps/web/app/api/api-client.ts index 8df673b..dc96f15 100644 --- a/examples/common_nestjs_remix/apps/web/app/api/api-client.ts +++ b/examples/common_nestjs_remix/apps/web/app/api/api-client.ts @@ -11,20 +11,20 @@ ApiClient.instance.interceptors.response.use( (response) => response, async (error) => { const originalRequest = error.config; - const isLoggedIn = useAuthStore.getState().isLoggedIn; - if (!isLoggedIn) { - return Promise.reject(error); - } + const isLoginRequest = originalRequest.url.includes("/login"); if (error.response?.status === 401 && !originalRequest._retry) { originalRequest._retry = true; - try { - await ApiClient.auth.authControllerRefreshTokens(); - return ApiClient.instance(originalRequest); - } catch (error) { - return Promise.reject(error); + if (!isLoginRequest && useAuthStore.getState().isLoggedIn) { + try { + await ApiClient.auth.authControllerRefreshTokens(); + return ApiClient.instance(originalRequest); + } catch (refreshError) { + useAuthStore.getState().setLoggedIn(false); + return Promise.reject(refreshError); + } } }