node.js - Reactjs - cookie 不仅仅存在于生产环境中,Firefox 会给出不正确的警告
问题描述
因此,在我的应用程序中,我设置了一个 cookie,如下所示:
this.cookies.set('session', sessionProperties, {
path: '/',
expires: new Date(session.valid_until),
secure: true,
sameSite: 'none'
});
通过调试,我可以看到正在生成的正确字符串,以SameSite=None; Secure
. 然后我看到 .cookies 对象和其中的会话对象。
这仅发生在生产服务器上 - 它在本地和其他测试服务器上工作。
但是,浏览器随后报告根本不存在 cookie,并且 Firefox 抱怨会话 cookie 将来不会保存,因为它缺少 Secure - 这是荒谬的,因为 (1) 它已经没有被保存,并且 (2)它确实有安全集
- 我已正确设置 CORS,允许正确的源域并使用 Allow Credentials
- 我正在获取凭据:true
- 它是 HTTPS
我没有想法 - 我不知道为什么它没有被保存,或者如何进一步解决这个问题。
请注意,secure:true
和sameSite: 'none'
以及credentials: true
非通配符 CORS 都是在尝试解决此问题时采取的所有故障排除步骤,并且不是原因,因为问题早于它们
我唯一能看到的是我和服务器之间的某些东西导致 cookie 失败。
什么可能导致这种情况?
解决方案
推荐阅读
- apache-flink - Flink AvroDeserializationSchema for specificRecord -- 使用泛型类类型
- java - 与外键约束作斗争
- visual-studio - 基础知识:在 groovy 中导入类
- javascript - Webpack 抱怨 typescript 定义文件导入 - 除非我添加 `d.ts` 结尾
- go - go-grpc 返回 TLS 错误“无法识别的名称”
- c++ - 如何实现深度为 n 的嵌套循环?
- android - SQLite,Android:如果我知道 ColumnIndex,我可以绕过调用 cursor.getColumnIndex(COLUMN_NAME) 吗?
- javascript - 如何让 XMLHttpRequest 每个请求运行一次?
- ios - 如何在 Swift 中翻译 @synthesize 协议变量?
- rxjs - Rxjs:在多个可观察对象发出后获取最新值