我正在使用express.js和vue 3构建一个应用程序,并且我正在使用基于会话的身份验证,它在本地运行得很好。
但是它在生产中不起作用。这是我配置会话和 cookie 的代码:
// in app.js
app.use(
session({
name: "totask.sid",
secret: config.sessionSecret,
resave: false,
saveUninitialized: false,
unset: "destroy",
cookie: {
sameSite: "none",
secure: config.env === 'production' ? true : false,
httpOnly: true,
maxAge: 60 * 60 * 1000 * 24 * 30,
},
store: MongoStore.create({ mongoUrl: config.mongoose.url }),
})
);
我在 render 中部署了 api,在 netlify 中部署了前端(用于测试)
我尝试更改配置,但无法解决。
问题是前端和后端位于两个不同的域,并且我的浏览器阻止了跨站点cookie