如何使用.load()从其他域获取内容?

tru*_*ktr 7 javascript ajax jquery cross-domain

使用.load()(或任何jQuery ajax函数)从我的域上的任何位置请求数据都可以正常工作.

尝试访问其他域中的URL不起作用.你怎么做呢?另一个域也恰好是我的.

我读到了你可以用PHP做的一个技巧,并制作一个获取内容的代理,然后你在服务器上的那个php位置使用jQuery的ajax函数,但是你仍然在你自己的服务器上使用jQuery ajax这样就不算了.

有一个好的插件吗?

编辑:我发现了一个非常好的jQuery插件,允许您使用任何jQuery函数从其他页面请求内容,就像您在自己的域中的普通ajax请求一样.

帖子:http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/

插件:https://github.com/jamespadolsey/jQuery-Plugins/tree/master/cross-domain-ajax/

mat*_*ven 10

这是因为跨域策略,在排序中,意味着使用客户端脚本(也称为javascript ...),您无法从其他域请求数据.幸运的是,大多数服务器端脚本都不存在此限制.

所以...

使用Javascript:

$("#google-html").load("google-html.php");
Run Code Online (Sandbox Code Playgroud)

PHP中的"google-html.php":

echo file_get_contents("http://www.google.com/");
Run Code Online (Sandbox Code Playgroud)

会工作.