我正在使用我的中间件,我想在用户登录后重定向用户。问题是API没有到达终点,而是停留在中间件部分(根据我的观察),页面也没有重定向。
import { NextRequest, NextResponse } from "next/server";
export function middleware(req) {
const url = req.url;
if (url.includes("login")) {
return NextResponse.redirect("localhost:3000/home", req.url);
}
return NextResponse.next();
}
export const config = {
matcher: ["/", "/api/login"],
};
1条答案
按热度按时间nzrxty8p1#
所以NextResponse.redirect不接受字符串作为它的第二个参数。
我想你正在寻找更像这样的东西:NextResponse.redirect(new URL('/home',req.url))
这将构造一个新的URL对象,并创建url https://localhost:3000/home。