javascript - 当 JS 在不同域上加载时,IE6、IE7 过期的 Cookie 会丢失

标签 javascript internet-explorer cookies tracking affiliate

我们正在尝试编写一个联属网络营销跟踪系统。

用户单击服务器 A 上 PHP 脚本的链接,该脚本会放置一些带有跟踪信息的 cookie。然后,该脚本将它们重定向到服务器 B 上的登录页面。一旦用户到达目标页面,就会使用之前设置的 cookie 加载由 PHP 代码生成的 JavaScript。

这在 Safari、FF 和 IE9 上都可以正常工作。

我们在 IE8 上遇到了一个问题,即生成 javascript 的 php 只能发回未使用 namevalue 以外的任何参数设置的 cookie。已指定过期日期的 Cookie 不会被退回。我们最终通过将 cookie 路径设置为 / 来解决这个问题,即使两个 php 脚本( setter 和 getter )都位于同一路径中。但该修复仅适用于 IE8,IE6 和 IE7 仍然存在同样的问题。

此外,如果我们直接调用 getter 脚本(而不是从服务器 B 上的脚本标记),那么一切都会按预期工作。

我们还尝试将 IE 隐私设置设置为最低设置。

我们如何设置 cookie 的示例

 <?PHP
 setcookie($key,$val);//this works

 //this doesn't
 setcookie('COOKIE', json_encode($info), time()+259200000);

最佳答案

在 IE8 中,其他浏览器使用的某些日期格式甚至在 IE7 和 IE9 中也不支持,您可以检查一下日期格式,否则将设置的 cookie 代码粘贴到此处,我们可以为您检查。

关于javascript - 当 JS 在不同域上加载时,IE6、IE7 过期的 Cookie 会丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8604044/

相关文章:

javascript - 循环 2 "Loading"背景图片

css - IE 忽略 zIndex

javascript - 如何使用 Fetch API 获取/设置多个 'Set-Cookie' header ?

php - 使用 AJAX 将表单数组作为 POST 数组发送到 PHP

javascript - 如何在子元素之间分配父元素的宽度

css - 使用 IE 在鼠标悬停时重新计算完整布局

javascript - setInterval 或 window.location 在 Opera、IE 和 Safari 中无法正常工作

带 cookies 的 JavaScript 倒计时器一分钟后停止

javascript - 即使 `alert` 是 `this`,如何在严格模式下的函数中定义 `undefined`?

html - Font Awesome 图标在 IE 和 Firefox 上不显示