Cookies Next.js不是持久化cookie

Cookies Next.js不是持久化cookie,cookies,next.js,Cookies,Next.js,我有一个服务器端呈现的Next.js/express应用程序,它与Django API(跨源)通信。我像这样登录用户: const response = await fetch('localhost:8000/sign-in', { method: 'POST', credentials: 'include', body: JSON.stringify({ email, password }),

我有一个服务器端呈现的Next.js/express应用程序,它与Django API(跨源)通信。我像这样登录用户:

const response = await fetch('localhost:8000/sign-in', {
                method: 'POST',
                credentials: 'include',
                body: JSON.stringify({ email, password }),
                headers: { 'Content-Type': 'application/json' },
            });
const result = await response.json();
if (response.status === 200) {
    Router.push('/account');
}
Django成功登录用户并返回
csrftoken
sessionid
cookie的
set cookie
头,但是,当我导航到另一个页面时(就像上面代码中我
Router.push
时),cookie不会持久

我假设这与服务器端和客户端有关,但当浏览器中设置cookie时,我希望它们无论如何都会保持不变


一旦设置好这些cookie,如何让它们在客户端的所有页面上持久化?

事实证明,
set cookie
是一种老方法。它是由浏览器控制的,所以它是模糊的

最后,我将
csrftoken
sessionid
发送回JSON正文中的客户端,并使用
localStorage.setItem('sessionid','theSessionId')
localStorage.setItem('csrftoken','theCsrftoken')将它们保存到
localStorage

然后,当我需要发出经过身份验证的请求时,我会将它们包含在获取头中:

const response = await fetch(`${API_HOST}/logout`, {
        method: 'POST',
        headers: {
            'X-CSRFToken': localStorage.getItem('csrftoken'),
            sessionid: localStorage.getItem('sessionid'),
        },
    });