使用AJAX加载外部内容

使用AJAX加载外部内容

问题描述:

是否可以使用jQuery的Ajax而不是iFrame加载外部网站的内容?使用AJAX加载外部内容

这是我正在努力实现的,但似乎可能会出现一些跨域问题?

$('#result').load('http://www.google.com'); 

在Flash中,您可以在站点的根目录中放置跨域策略文件,以允许某些站点访问swf文件或其他文件的内容。这是可以使用AJAX完成的事情吗?

谢谢, 詹姆斯

+0

这里可能是一个愚蠢的问题,你想要一个'

是否有可能加载使用jQuery的阿贾克斯,而不是一个iFrame的外部网站的内容?

Same Origin Policy通常会阻止它。您可以使用JSON-P来解决此问题以传输该数据。

在Flash中,您可以在站点的根目录中放置跨域策略文件,以允许某些站点访问swf文件或其他文件的内容。这是可以使用AJAX完成的事情吗?

不跨浏览器,该standard太新(和未完成)

这是可能的,在部份。您需要在您的服务器充当代理:

$('#result').load('fetch.php?s=http://www.google.com'); 
// or something like that 

对于具有客户端加载一个页面跨域,它不会(应该)是可能的。

+0

fetch.php的内容是:'echo file_get_contents($ _ GET ['s']);'例如。 – 2010-07-01 12:33:50

+0

您可能需要对该输入进行一些验证 - 想象一下,如果有人用s =/etc/password来调用它,那么...... – 2010-07-01 12:54:58