如何跨域加载XML文件?

时间:2012-06-06 02:02:50

标签: html xml

我从W3schools了解到,出于安全原因,我无法跨域解析XML文件。我有一个小的嵌入式Web服务器,上面有一个包含传感器数据的XML文件。我想通过解析XML文件,使用HTML将数据提取到网站中。该网站在另一个域外部托管。

有没有办法将XML数据自动复制到同一个域以解决此安全限制?或者我在这里遗漏了什么?

1 个答案:

答案 0 :(得分:1)

有两种方法可以解决这个问题:

  1. 在加载HTML的服务器端代码上,实现“代理”。基本上这意味着从XML实际“驻留”的服务器将XML下载到该服务器。您可以用PHP / Java / Python /您使用的任何服务器端代码编写此代码。
  2. 你可以做的另一件事(如果可能的话,这是首选)是你可以用某种方式说服服务器用XML来提供不是XML的数据,而是JSON。那么你可以做的是,你可以编写一些客户端代码(Javascript)来直接获得它,从根本上规避安全限制。这将通过AJAX在客户端实现。如果数据是XML格式,则无法进行此操作。