【发布时间】:2012-07-01 10:22:34
【问题描述】:
我正在使用
xhrFields : {
withCredentials: true
}
在 jQuery $ajax 调用中,以便在我的查询中发送会话 cookie。
该调用在我的 apache 日志中提供了正确的状态代码(401/200,取决于是否设置了 cookie),但 Firefox 总是收到状态=0(即 $.ajax() 中的错误) 如果我删除了这个 xhrFields 部分,状态码就可以了(但不发送 cookie)
这是我在 Firefox 中使用 xhrFields 设置收到的响应对象:
{"readyState":0,"responseText":"","status":0,"statusText":"error"}
我的 Apache 配置启用了 CORS,并且还允许 Access-Control-Allow-Credentials(这里是相应的 HTTP 标头)
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
AJAX 调用或网络服务器配置中是否缺少某些内容?
注意:这在 Chrome 中运行良好
【问题讨论】:
-
您是否检查过其他浏览器(如 G Chrome)?
-
我在 Chrome 上遇到了同样的问题,而且我也在使用完整的来源而不是通配符来源。
标签: jquery ajax firefox cookies cors