html:从不同的域加载外部文档

时间:2012-05-19 15:02:52

标签: javascript html dom

假设我有一个domain1.com,那里有一个html页面: http://domain1.com/test.html

然后,还有另一个带有data.html页面的domain2.com: http://domain2.com/data.html

是否可以将data.html加载到test.html页面进行处理,我该怎么办?

我的dom / javascript知识相当生疏,所以我想问一下这样做的方法是什么?

基本上,我想将它加载到一些隐藏的框架中或使用xml请求(或其他任何调用),然后使用JS处理该数据。这应该适用于常规的当前浏览器,并且不需要任何额外的设置来允许跨域请求(如果存在问题)。

1 个答案:

答案 0 :(得分:0)

通常情况下,你不能。但你有选择,还有一些“额外的设置”

    如果远程服务器和浏览器支持,
  • Cross-Origin Resource sharing (CORS)将是简单直接的解决方案。您需要在服务器端进行一些“额外设置”。然后,使用带有修改标头的AJAX来允许CORS。

  • JSON-P这是一个包装在回调中的JS对象。还有,服务器上还有一些额外的设置。您需要确定接收回调的名称,使用JSON编码数据并将JSON包装在函数调用中。然后将其加载到动态脚本标记中。

  • 服务器代理。这具有最“额外的设置”,但授予您更多的灵活性。您可能想要询问您域中的服务器脚本是否从其他域加载页面(类似于wget或curl)。由于您要求服务器为您加载页面,因此您只需要在客户端域部分使用通常的AJAX。