我目前正在测试一些使用Range标头发出GET请求的JavaScript(即带有“get”的XMLHttpRequest)。因为请求是跨域的,所以我在响应中实现了访问控制头,如下所述:
https://developer.mozilla.org/En/HTTP_access_control#Preflighted_requests
然而令我感到困惑的是,我目前的服务器设置是在Chrome中运行,而不是在Firefox中运行。具体来说,当我在Chrome中运行JavaScript时,我正在收回一大块所请求的数据,就像我想要的那样。在Firefox中,我在请求方法OPTIONS
上收到错误代码501起初,似乎OPTIONS请求方法需要由服务器处理,但是在Chrome中可以使用,因此看起来这是一个红色的鲱鱼,其他的东西是错误的。目前实现了以下响应头,也许这就是问题所在:
Access-Control-Allow-Headers: Range
Access-Control-Allow-Origin: *
任何人都对我需要做什么有所了解? Chrome和Firefox是否以不同方式处理跨域限制?