ajax跨域请求

时间:2011-01-04 23:33:27

标签: javascript ajax browser dns

由于出于安全原因,Ajax请求是有限的,所以没有太多内容,只需按照规则呃......但我已经越过了这个:

https://developer.mozilla.org/en/Same_origin_policy_for_JavaScript

据说,如果您使用以下javascript行处理同一域的子域,则可以“绕过”这些规则:

document.domain = "company.com";

我还没有尝试过,因为我不知道这是否只对任何其他浏览器起作用(完全有效),或者至少是主要的浏览器。有可能吗?

感谢。

3 个答案:

答案 0 :(得分:1)

我建议JSONP用于跨域请求。它相对容易使用,并允许您从任何支持回调的服务器/脚本请求任何内容(只要它是JSON格式)。关于JSONP的好处是,它可以在旧版浏览器中运行,与许多其他解决方案不同。

唯一严重的限制似乎是它总是使用HTTP GET方法,正如Matthew Abbott在评论中指出的那样。

答案 1 :(得分:1)

如果您可以控制其他域,则可以使用CORS。 (是的,我知道这不能回答你的实际问题。对不起,我能做到最好。)

答案 2 :(得分:0)

对于记录,document.domain有效。但是,由于某种原因,它不支持子域。