Firefox send a cross-domain post with credentials,我可以(使用Charles - HTTP调试的代理)看到服务器正在发回响应......但Firefox并没有“让我看到它”(因为缺乏更好的描述) )。
例如,使用the documented example:
>>> var invocation = new XMLHttpRequest(); >>> invocation.open('GET', 'http://localhost/~wolever/cookie.php', true); >>> invocation.withCredentials=true; >>> invocation.onreadystatechange = console.log; >>> invocation.send() http://img.skitch.com/20100113-bq3a4qb1ufn52331x18ce3c7xu.png >>> invocation.responseText "" >>> invocation.responseXML null
但是,Charles告诉我,这个请求实际上已经返回了预期的响应:
http://img.skitch.com/20100113-njakyu4xequ5e3cyfhfnyeatq5.png
知道可能出现什么问题吗?
而且,这有助于:没有凭据的相同请求会返回应有的数据。
答案 0 :(得分:8)
这是您链接到的MDC部分的底部:
重要提示:在响应凭证请求时,服务器必须 指定一个域,并且不能使用wild-carding。上面的例子会失败 如果标题被通配为:Access-Control-Allow-Origin:*。
我打赌你错过了这个,它被隐藏在几个大的示例代码块之下。