javascript - Cookie 未保存在浏览器中,但与邮递员一起工作正常
问题描述
好的,所以当后端和前端托管在 Localhost 中时,一切正常
但是当我将后端部署到(Heroku)和前端到(Vercel)HTTPS并将cookie设置为sameSite =“NONE”安全时,浏览器不再设置cookie,但邮递员工作得很好,我尝试了很多CORS 选项不起作用
//后端和前端都包含凭据//
这是后端快速 CORS 配置
///////////// Express cors config ///////////
app.use(
cors({
origin: true,
credentials: true,
exposedHeaders: ['Set-Cookie'],
allowedHeaders: [
'Authorization',
'Content-Type',
'membership-id',
'account-id',
'X-Requested-With',
'Accept',
'Origin',
],
}),
);
曲奇饼
const token = jwt.sign({userID: user._id}, process.env.JWT_SECRET, {
expiresIn: 900,
});
res.setHeader(
'Set-Cookie', cookie.serialize('token', token, {
httpOnly: true,
sameSite: 'none',
secure: true,
maxAge: 900,
path: '/',
}),
);
和 axios 的前端
const API = axios.create({
baseURL: 'https://apiplalapalpl.com',
withCredentials: true,
});
const res = await API.post('/api/user/login', { email, password });
这是来自 chrome 的一些图片
https://i.imgur.com/4Mh2l46.png , https://i.imgur.com/USgT2ay.png
请帮忙,我要拔掉我的头发了:(
解决方案
推荐阅读
- vue.js - 根据外部 v-for 的属性设置选项的选定属性
- python - Python Pandas:对目录中的每个文件进行循环
- r - ggplot2:调整文本和轴之间的距离
- jquery - 如何在导航项上添加引导 4 活动类?
- r - R代码隐藏保护
- c# - Xamarin 表单切换如何记住和更新用户设置(推送通知)
- php - PrestaShop 1.5 添加 PHP (reCaptcha)
- javascript - 我应该避免在减少中使用对象传播吗?
- javascript - 如何同时使用 module.exports 和 exports.default
- xml - 通过 XSLT 1.0 更改(反转)元素属性值中的日期顺序