NextRequest 对象在运行时总是返回一个未定义的区域设置数据值(req.nextUrl.locale)
当我尝试在测试中设置值时遇到此错误:
TypeError: The NextURL configuration includes no locale "en"
> 101 | req.nextUrl.locale = 'en';
这是我的测试:
it('should redirect to default locale URL for default locale paths without token', async () => {
const req = new NextRequest(new Request('https://example.com/register'), {
headers: {
locale: 'default',
},
});
req.cookies.set(appConfig.i18n.cookie_locale, 'en');
req.nextUrl.locale = 'en';
const response = await middleware(req);
expect(response).toEqual(
NextResponse.redirect(new URL('/register', req.url))
);
});
我也尝试设置标题,但没有改变任何东西