ios - iOS 12.4 上的 Chrome 和 Safari 没有及时设置 cookie
问题描述
在网页中,我在页面加载时设置了一个 cookie,然后检查条件并立即重定向到我读取 cookie 的同一站点上的第二个页面。当我到达第二页时,cookie 没有设置。上述功能适用于桌面浏览器,它适用于 iOS 12.3.1,无需对站点进行任何更改。升级到 12.4 后它停止工作,但仍然可以在 12.3.1 设备上工作。有什么想法吗?
解决方案
这不是一个全面的答案,因为问题中缺少部分。
#1,当用户从本地文件提供页面时,通常会出现此问题。
例如:
file:///C:/project/index.html
。
Cookie 需要运行网络服务器才能设置。至少意味着您需要从http://localhost/index.html
.
#2,您正在设置 cookie 中的路径。这意味着 cookie 仅限于一个路径。
// Example:
document.cookie = "key=value; expires=; path=/my/path/"
此处的 cookie 仅在声明的 url 路径中有效。
推荐阅读
- php - 将集合保存到数据库
- css - 在中间垂直对齐按钮值
- javascript - 修改url中的参数(带变量)
- python - 在 python 中,如何获得对象/字典列表中的最低键值对,其中每个项目都有不同的单独键值对?
- angular - 一旦用户在字段内移动光标,如何使消息从输入框中消失
- python - Zapier 'int' 对象没有属性 'copy'
- join - Kafka Streams:手动连接时存储计算产生的滞后(延迟)
- node.js - 在具有多个 JS 文件的 NodeJS 模型中创建子文档
- image - 如何在 Flutter 中为 ios、android 和 web 添加不同分辨率的图像?
- angular - 可以在 ionic 项目中使用 Nativescript-photo-editor