在我的开发环境中,以下代码可以完美运行,没有问题,没有错误,可以正常工作。由于一些奇怪的原因,当我推送到生产时它没有任何 cookie,它有 ctx.req.headers,但没有 cookie。我已经将这段代码用于许多其他项目,所以我完全不明白为什么这不起作用。
export async function getServerSideProps(ctx) {
try {
const userRes = await fetch(process.env.SERVER + `/auth/user`, {
headers: { cookie: ctx.req.headers.cookie },
credentials: 'include',
});
const userData = await userRes.json();
if (!userData || userData.rank < 5) {
ctx.res.setHeader('location', '/')
ctx.res.statusCode = 302
ctx.res.end()
}
return {
props: {},
};
} catch (e) {
ctx.res.setHeader('location', '/')
ctx.res.statusCode = 302
ctx.res.end()
return {
props: {},
};
}
}