【发布时间】:2016-12-25 22:43:05
【问题描述】:
由于某种原因,我的浏览器(我尝试了几个)没有设置 cookie,即使当通过 Ajax 使用 fetch api 进行 GET 调用时服务器返回了有效的 set-cookie 响应来进行请求
如果我只是通过将 URL 放入浏览器中进行相同的 GET 调用,则(相同的)set-cookie 响应标头会受到浏览器的尊重并保存 cookie。
我已经通过 LiveHeaders 和 Chrome 网络检查器检查了请求和响应标头,没有区别。
编辑:澄清一下,这不是 ajax 向服务器发送 cookie 的问题。当响应返回带有有效的 set-cookies 标头时,浏览器根本不保存 cookie 是一个问题(根据文档,无论是否为 ajax,都应该尊重该标头)。
【问题讨论】:
-
与@Sam Axe 的问题不同。问题不在于后续请求,而在于浏览器根本没有保存 cookie。
-
AJAX 请求是否与当前页面同源(协议、端口、域)?
-
是的,没有 CORS 影响。
标签: javascript ajax cookies fetch