使用客户端编码加载外部URL

时间:2009-08-08 17:33:20

标签: jquery

我最近创建了一个学生组织网站(即www-sc.xxx.edu/studentorganizations/ourorganization)。我们学院不允许我们创建动态网站,所以我需要在不同的域(博客,新闻等)托管一些页面。现在,我想掩饰我在外部URL上托管了一些网站。因此,例如,如果学生访问新闻页面,我希望从外部URL加载数据,而无需访问者意识到。这有可能用jquery,如果有,怎么样?

提前谢谢大家。

4 个答案:

答案 0 :(得分:3)

这是一个棘手的问题,因为通常您无法使用XMLHttpRequest从与您当前所在站点不具有相同来源的资源加载数据。这是出于安全原因:如果您的javascript可以从任何地方加载任意数据,这将打开各种跨站点脚本攻击的大门。

如果要做的只是从外部网址显示数据,您可以在iframe中执行此操作。但是,您修改数据表示的能力将非常有限。

此标准解决方案是编写一个服务器端代理,从外部资源获取数据,然后将其发送到客户端,但听起来您可能无法执行此操作。

但是,如果您提取的数据以JSON格式提供,则 可以使用JSONP获取第三方数据。 jQuery supports this natively从版本1.2开始。

答案 1 :(得分:0)

虽然现在这些都非常不受欢迎,但我认为解决问题最直接的方法是将外部内容合并到简单的HTML iframe中。

注意:我在此假设,“不允许我们创建动态网站”,您的意思是您无权访问该服务器上的PHP或类似内容

答案 2 :(得分:0)

...如何将外部加载到iFrame中? 如:

  

...如果你可以根据需要用jQuery修改src。

答案 3 :(得分:0)

iFrames可以是无边框的,可以在大多数现代浏览器上与您的网页很好地集成。它们似乎是组织非常方便的选择。