如何在nextjs 13.4.2中设置cookie我已经尝试了NextResponse和cookies-next,但它没有在我的浏览器中设置cookie。我的流程是
我想设置cookie,如果用户登录并保存在cookie存储的jwt令牌
mo49yndu1#
您可以尝试在NextResponse中使用“Set-Cookie”头。
export async function GET(req: NextRequest) { // do stuff here return new NextResponse(<JSON body>, { status: 200, headers: { "Set-Cookie": `jwt=${jwt}; sameSite=strict; httpOnly=true; maxAge=60*60*24` }, }); }
带有Set-Cookie标头的响应将设置cookie。否则,如果您希望使用NextResponse方法设置cookie,请先创建响应,然后使用set()
Set-Cookie
export async function GET(req: NextRequest) { const response = NextResponse.json( {data}, { status: 200, statusText: "Set cookie successfully" } ); response.cookies.set({ name: "jwt", value: jwt, maxAge: 60*60*24, httpOnly: true, sameSite: strict, }); }
1条答案
按热度按时间mo49yndu1#
您可以尝试在NextResponse中使用“Set-Cookie”头。
带有
Set-Cookie
标头的响应将设置cookie。否则,如果您希望使用NextResponse方法设置cookie,请先创建响应,然后使用set()