我在内部服务器上调用服务器站点。该域名如下所示:
http://server.domain:12345/x.html
现在,使用IE这个工作正常,我正在获取数据。 (我的问题是IE在第一次电话会议后永远缓存网站,但没关系)。
现在,如果我试图在Firefox中做同样的事情,它将无法正常工作,在Google Chrome中也是如此。
Firebug说:
Answer-Header
Connection Keep-Alive
Content-Length 109
Content-Type text/html; charset=UTF-8
Keep-Alive timeout=5000
Server AbWeb Version SRSG 1.34
Set-Cookie sessionkey=80da7dfe-1c9c-4460-9592-3ce55cecb379
Request-Header
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Accept-Encoding gzip, deflate
Accept-Language de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Connection keep-alive
Host server.domain:12345
Origin http://otherserver.domain
Referer http://otherserver.domain/test/
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0
Chrome说:
X XMLHttpRequest cannot load http://server.domain:12345/x.html. Origin http://otherservere.domain is not allowed by Access-Control-Allow-Origin.
server.domain:12345/x.html
X Failed to load resource
答案 0 :(得分:1)
您似乎在执行跨域JavaScript调用。目标服务器必须设置Access-Control-Allow-Origin
HTTP标头。在您的情况下,服务器http://server.domain
必须设置如下标题:
Access-Control-Allow-Origin: http://otherserver.domain
我不知道为什么它适用于IE,它可能与您的安全域有关,因为您只是在Intranet中工作。
见另一个例子: