From 8dc7d08210e11c3c47173b918428b92fc58e0671 Mon Sep 17 00:00:00 2001 From: andrzej Date: Fri, 13 Sep 2024 21:51:03 +0200 Subject: [PATCH] fix urls --- src/middleware.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/middleware.ts b/src/middleware.ts index b133cbb..44a89ca 100644 --- a/src/middleware.ts +++ b/src/middleware.ts @@ -1,3 +1,4 @@ +"use server" import { NextRequest, NextResponse } from "next/server"; import { verifyJwt } from "app/api/auth/actions"; @@ -13,7 +14,9 @@ function matchesWildcard(path: string, pattern: string): boolean { } export default async function(request: NextRequest) { - const LOGIN = `${process.env.NEXT_PUBLIC_BASE_URL}/login?redirect=${request.nextUrl.pathname + request.nextUrl.search}` + // const url = `${process.env.NEXT_PUBLIC_BASE_URL}/login?redirect=${request.nextUrl.pathname + request.nextUrl.search}` + const url = request.nextUrl.clone() + url.pathname = "/login" if (protectedRoutes.some(pattern => matchesWildcard(request.nextUrl.pathname, pattern))) { const token = request.cookies.get('token') @@ -21,7 +24,7 @@ export default async function(request: NextRequest) { //NOTE - may need to add logic to return 401 for api routes if (!token) { - return NextResponse.redirect(LOGIN) + return NextResponse.redirect(url) } try { @@ -31,12 +34,12 @@ export default async function(request: NextRequest) { if (!jwtIsVerified) { //delete token request.cookies.delete('token') - return NextResponse.redirect(LOGIN) + return NextResponse.redirect(url) } } catch { //delete token (failsafe) request.cookies.delete('token') - return NextResponse.redirect(LOGIN) + return NextResponse.redirect(url) } //redirect from login if already logged in