mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-30 21:01:54 +08:00
23 lines
705 B
TypeScript
23 lines
705 B
TypeScript
import { NextResponse } from 'next/server';
|
|
import type { NextRequest } from 'next/server';
|
|
import { hexclaveServerApp } from './hexclave';
|
|
|
|
export async function middleware(request: NextRequest) {
|
|
console.log('Running middleware on URL: ', request.url);
|
|
|
|
// fetch the user object, and redirect if not logged in
|
|
const user = await hexclaveServerApp.getUser();
|
|
if (!user) {
|
|
console.log('User in middleware is not logged in. Redirecting to sign-in page');
|
|
return NextResponse.redirect(new URL('/handler/sign-in', request.url));
|
|
}
|
|
|
|
console.log('User in middleware is logged in. ID: ', user.id);
|
|
|
|
return NextResponse.next();
|
|
}
|
|
|
|
export const config = {
|
|
matcher: '/protected/:path*',
|
|
};
|