diff options
| author | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-05-13 16:36:35 +0100 |
|---|---|---|
| committer | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-05-13 16:36:35 +0100 |
| commit | 5c834e269bfff00b92ee63862cbbc7165743de9e (patch) | |
| tree | be15791166e572b246dd7a4adba0cf66d3bffe08 /communities/red-right-hand/174bg.net/src/middleware.js | |
| parent | 7dd09b51c733532ecb54951237f94368dd11badd (diff) | |
| download | unnamed-group-5c834e269bfff00b92ee63862cbbc7165743de9e.tar unnamed-group-5c834e269bfff00b92ee63862cbbc7165743de9e.tar.gz unnamed-group-5c834e269bfff00b92ee63862cbbc7165743de9e.tar.bz2 unnamed-group-5c834e269bfff00b92ee63862cbbc7165743de9e.tar.xz unnamed-group-5c834e269bfff00b92ee63862cbbc7165743de9e.zip | |
add better-auth
Diffstat (limited to 'communities/red-right-hand/174bg.net/src/middleware.js')
| -rw-r--r-- | communities/red-right-hand/174bg.net/src/middleware.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/communities/red-right-hand/174bg.net/src/middleware.js b/communities/red-right-hand/174bg.net/src/middleware.js new file mode 100644 index 0000000..d9b9a6c --- /dev/null +++ b/communities/red-right-hand/174bg.net/src/middleware.js @@ -0,0 +1,31 @@ +import { NextResponse } from "next/server"; + +export async function middleware(request) { + let session = null; + + try { + const res = await fetch( + new URL("/api/auth/get-session", request.nextUrl.origin), + { + headers: { + cookie: request.headers.get("cookie") ?? "", + }, + }, + ); + session = await res.json(); + } catch { + // If session check fails, treat as unauthenticated + } + + if (!session?.user) { + const loginUrl = new URL("/login", request.url); + loginUrl.searchParams.set("callbackUrl", request.nextUrl.pathname); + return NextResponse.redirect(loginUrl); + } + + return NextResponse.next(); +} + +export const config = { + matcher: ["/secure/:path*"], +}; |
