我有一个与 NX 一起使用的 mono repo 项目。一切工作正常,但我尝试添加中间件,但它没有被捕获在请求中。 我尝试将它放在所有不同的地方,并且名称中也包含 _ ,但没有成功。 有谁知道这里可能出了什么问题? 这是我的项目和中间件分发的图像。 我正在使用 Nextjs 14.0.4
这是我的中间件的代码:
import { NextResponse } from 'next/server';
import { NextRequest } from 'next/server';
export default function middleware(request: NextRequest) {
const pathname = request.nextUrl.pathname;
console.log('MIDDELWAREEEE');
const publicPaths = ['/login', '/register'];
if (publicPaths.includes(pathname)) {
return NextResponse.next();
}
const token = request.cookies.get('auth_token');
console.log('token', token);
if (!token) {
return redirectToLogin(request);
}
if (!token.value) {
return redirectToLogin(request);
}
}
function redirectToLogin(req: NextRequest) {
const url = req.nextUrl.clone();
url.pathname = '/login';
return NextResponse.redirect(url);
}