所以在我的 app.js 文件中我有这个:app.use(session({secret: 'mySecret', resave: false, saveUninitialized: false}));
这工作正常但会出现警告:
Cookie “connect.sid” will be soon rejected because it has the “sameSite” attribute set to “none” or an invalid value, without the “secure” attribute. To learn more about the “sameSite“ attribute, read https://developer.mozilla.org/docs/Web/HTTP/Cookies
然后它会随机停止工作。如果我将 session 更改为此:它变得不确定。
我正在尝试保存 2 个不同的 ID:req.session.qrID 和 req.session.visitID;
它被用在许多post请求中。我可以做些什么来完成这项工作?
最佳答案
我刚刚用谷歌搜索了我在控制台中看到的这个警告,然后来到这里大声笑。 它实际上与设置的快速 session cookie 跨站点策略有关,更多信息在 cookie.sameSite 下 http://expressjs.com/en/resources/middleware/session.html
我通过将它设置为 strict 摆脱了我的,但如果你愿意,你也可以将它设置为 none
app.use(
session({
secret: process.env.SESSION_SECRET!,
resave: false,
saveUninitialized: false,
cookie: { sameSite: 'strict' },
}),
);
关于javascript - 我如何在快速 session 中使用 cookie - connect.sid 很快就会被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61999068/