我正在尝试在我的主域(http://foo.com)和我的API(http://api.foo.com)之间开发请求.
为了绕过关于跨子域内容的限制,我在主页(http ////foo.com/main.html)上使用iframe,指向iframe.html页面:scripts.api.foo.com.
(scripts.api.foo.com和foo.com在同一台服务器上,api.foo.com在其他服务器上)
> iframe.html:
Meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
> main.html:
Meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
警报窗口始终包含Firefox 3.0 / Chrome的“302”(重定向),IE8的“0”…虽然Firebug告诉我我的请求获得“200 Ok”状态(并且没有响应)…
我已经尝试过,直接在scripts.api.foo.com/iframe.html上,提出相同的请求,并获得相同的状态代码.
在网上徒劳地搜索实现跨子域的明确方法或对这些状态代码的解释后,我感到非常沮丧…
欢迎任何帮助.
非常感谢您的关注.
再见.
最佳答案
不幸的是,跨域请求的规则也最终阻止了子域内的请求,即使技术上它是同一个服务器.您可以通过代理运行或使用跨域hack来允许$.ajax调用运行.这里有一篇关于使用iFrame和跨域内容的非常好的文章
http://softwareas.com/cross-domain-communication-with-iframes