Firefox尽管标头出现“跨域请求被阻止”

我正在尝试提出一个简单的跨域请求,而Firefox始终通过此错误阻止它:


跨域请求被阻止:同源策略禁止读取[url]处的远程资源。可以通过将资源移到同一域或启用CORS来解决此问题。[网址]


它可以在Chrome和Safari中正常运行。


据我所知,我已经在PHP上设置了所有正确的标头,以使其能够正常工作。这是我的服务器响应的内容


HTTP/1.1 200 OK

Date: Mon, 23 Jun 2014 17:15:20 GMT

Server: Apache/2.2.22 (Debian)

X-Powered-By: PHP/5.4.4-14+deb7u8

Access-Control-Allow-Origin: *

Access-Control-Allow-Methods: GET, POST, OPTIONS

Access-Control-Allow-Headers: Content-Type

Access-Control-Request-Headers: X-Requested-With, accept, content-type

Vary: Accept-Encoding

Content-Length: 186

Content-Type: text/html

我尝试使用Angular,jQuery和基本的XMLHTTPRequest对象,如下所示:


var data = "id=1234"

var request = new XMLHttpRequest({mozSystem: true})

request.onload = onSuccess;

request.open('GET', 'https://myurl.com' + '?' + data, true)

request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')

request.send()

...并且适用于除Firefox之外的所有浏览器。有人能帮忙吗?


慕斯709654
浏览 777回答 3
3回答

墨色风雨

事实证明,这与CORS无关-这是安全证书的问题。误导性错误= 4小时头痛。

慕容3067478

我发现我的问题是我向交叉请求发送的服务器具有不可信的证书。如果要使用连接到跨域https,则必须先为此证书添加一个例外。您可以通过访问被阻止的链接一次并添加异常来实现。

交互式爱情

我遇到了这个问题,发现该消息阻止了Firefox中的请求:原因:CORS请求未成功拔掉头发后,我发现新安装的Firefox扩展程序Privacy Badger阻止了请求。如果在挠头之后遇到此问题,请尝试检查已安装的扩展,以查看其中是否有阻止请求的扩展。请参阅原因:有关MDN的CORS请求未成功。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript