我正在通过位于bar.domain.com的代理访问API。我通过位于foo.bar.domain.com上的脚本访问它。所以当然,我碰到了same origin policy。Document.domain不能正常工作,因为我期待
在foo.bar.domain.com上加载的第一个脚本的顶部,我设置了document.domain = "bar.domain.com"
。
在检查器中,如果我在此行之后立即暂停执行并检查document.domain,它将返回bar.domain.com。和.ajax之前的暂停一样,并且在所有的javascript都运行之后也一样。
不幸的是,我仍然得到:Origin http://foo.bar.domain.com is not allowed by Access-Control-Allow-Origin.
我希望我可以给一个活生生的例子,唉,我被要求不要:/
我如何能解决或调试这个任何想法?非常感谢您提供的任何帮助。
你仍然在同一协议? Domain.com实际上是一个.com域名?你在尝试使用哪些浏览器?你不转换端口?你能显示一些代码吗? – 2011-01-27 17:42:07
我们的确在使用相同的协议和端口。我为我的代码使用requireJS,所以这里是受影响的部分的一个非常简化的模型:http://jsfiddle.net/WSEue/ – 2011-01-27 17:48:34