[英]Cross site tracking on safari not allowing express session send cookies
因此,我构建了一个使用护照和快速会话进行身份验证的应用程序。 当我部署时,我发现 safari 并没有让 express session 工作,直到我在其设置中关闭“跨站点跟踪”。 我该如何进行这项工作?
根据这篇文章https://sarav.co/session-persisting-issue-safari我需要手动将其关闭,但老实说我不能指望我的用户手动执行此操作。
以下是我如何设置我的快速会话:
app.set('trust proxy', 1);
app.use(session({
secret: process.env.SESSION_SECRET,
resave: false,
saveUninitialized: false,
cookie: {
secure: true,
httpOnly: true,
sameSite: 'none',
maxAge: 60 * 60 * 24 * 1000
},
store: MongoStore.create({
mongoUrl: process.env.DB_URL,
ttl: 14 * 24 * 60 * 60,
autoRemove: 'native',
})
}));
从这里使用具有正确选项的 CORS 中间件 - https://expressjs.com/en/resources/middleware/cors.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.