From c0d866c8a5752472e7229dccc36e93636f027192 Mon Sep 17 00:00:00 2001 From: fjallnari Date: Sat, 21 Sep 2024 19:51:03 +0200 Subject: [PATCH] Fix QCreate failing after token refresh --- src/client/src/App.svelte | 6 +++--- src/middleware/auth.ts | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/client/src/App.svelte b/src/client/src/App.svelte index 2486a45..5c050ac 100644 --- a/src/client/src/App.svelte +++ b/src/client/src/App.svelte @@ -13,7 +13,7 @@ import { cssVarTheme } from "./util/util"; import { THEMES } from "./enum/Themes"; - const maxAge = 10000; // for memoizing refresh token + const maxAge = 60; // for memoizing refresh token $: memoizedRefreshToken(); @@ -60,8 +60,8 @@ accessToken.set(response.data.accessToken); setTimeout(() => { - memoizedRefreshToken(); - }, 600000 - 500); + memoizedRefreshToken(); + }, 600000 - 30000); // 10 minutes - 30 seconds if (response.status === 200 && $location === '/auth') { replace('/'); diff --git a/src/middleware/auth.ts b/src/middleware/auth.ts index 6123e04..c4ff822 100644 --- a/src/middleware/auth.ts +++ b/src/middleware/auth.ts @@ -1,6 +1,7 @@ import { NextFunction, Request, Response } from "express"; import jwt from "jsonwebtoken"; import { ObjectId } from "mongodb"; +import logger from "../logger"; declare global { namespace Express { @@ -26,6 +27,7 @@ const verifyToken = (req: Request, res: Response, next: NextFunction) => { req.user = Object.assign(jwtObj?.user, { _id: new ObjectId(jwtObj?.user._id)}); } catch (err) { + logger.error({ error: err }, `JWT token is invalid`); return res.status(401).send("Invalid token"); } return next();