无法在前端和后端服务器之间设置cookie

问题描述 投票:0回答:1

我的 MERN 堆栈的前端托管在 vercel 上,后端托管在 render 上。 这是我的 cors 设置。

const corsConfig = {
  origin: true,
  credentials: true,
};

app.use(cors(corsConfig));
app.options('*', cors(corsConfig));

这是我设置cookie的方法

const token = jwt.sign({ _id: savedUser._id }, process.env.JWT_SECRET_TOKEN);
const domain = process.env.NODE_ENV === 'production' ? '.vercel.app' : 'localhost';
res.cookie('token', token, { domain, httpOnly: true, sameSite: 'None', secure: true });

这是我的网络设置cookie错误的屏幕截图

set-cookie

当鼠标悬停在黄色图标上时,我收到消息“尝试通过 set-cookie 标头设置 cookie 被阻止,因为其域属性对于当前主机 url 无效”

任何解决此问题的帮助将不胜感激。我的前端网址类似于 https://hi.vercel.app/,我的后端网址类似于 https://bye.onrender.com

我尝试设置域、sameSite 和安全属性,但都不起作用。它在我的本地主机上从 localhost:3000 到 localhost:5001 工作,但当我将代码部署到生产环境时不起作用。

javascript cross-domain vercel setcookie
1个回答
0
投票

面临同样的问题:(坚持了两天了

© www.soinside.com 2019 - 2024. All rights reserved.