【发布时间】:2018-06-21 05:22:56
【问题描述】:
多年来,我一直在使用相同的代码,到目前为止,所有浏览器都运行良好:
$.ajax({
url: '/test.php',
data: parameters,
dataType: 'html',
type: 'post'
})
但是,自从我的用户开始升级到 iOS 11.4 后,那些使用 Safari 私人模式的用户遇到了与我的网站“断开连接”的问题。
这是因为 ajax POST 请求显然没有发送任何 Cookie。作为该 POST 请求的一部分创建一个全新的会话(创建新的 cookie 等)。
但是,这不会影响 GET 请求本身的任何内容。即使新的 cookie 被设置为 ajax POST 请求的一部分,它们仍然使用相同的 cookie(因此也是相同的会话)。就像那些 ajax POST 请求被“沙盒化”一样,不会影响其他任何东西。
有什么想法吗?这是 iOS 11.4 上 Safari 的错误吗?
【问题讨论】:
标签: ajax post cookies safari mobile-safari