0

我正在尝试访问和显示存储在特定 url 中的数据。但是我的代码运行不正确。对此有何建议?

function getData( theURL ) {
   var xmlHttp = null;
   xmlHttp = new XMLHttpRequest();
   xmlHttp.open( "GET", theURL, false );
   xmlHttp.send( null );
   return xmlHttp.responseText;
}
var url = "https://cloudant.com/futon/document.html?acharya%2Ftoxtweet/ff558f75077e8c758523cd3bd8ffdf88";
getData(url);
4

3 回答 3

3

XMLHttpRequest 仅适用于同一个域。

如果您有服务器端设置,您可以代理所需的页面,以便它从您的服务器到达。

于 2012-12-19T04:22:26.303 回答
1

由于 XMLHttpRequest 不允许跨域请求,我相信你可以使用三种解决方案。可用性将取决于您正在集成的服务。

  1. 使用 JSONP。如果外部 URL 支持 JSONP 响应,您可以直接使用它来调用跨域。http://en.wikipedia.org/wiki/JSONP
  2. 服务器端代理(由@Kolink 解释)
  3. 服务器端脚本。假设您在服务器端使用 PHP。您可以通过 PHP 调用外部 URL,然后将相关数据输出到您域内的页面。您必须执行此操作的方式取决于服务器端脚本语言。
于 2012-12-19T04:49:58.503 回答
0

另一个纯 js 解决方案是使用 YQL,检查: http ://christianheilmann.com/2010/01/10/loading-external-content-with-ajax-using-jquery-and-yql/ (滚动到底部对于完整的脚本) - 工作正常。

于 2012-12-19T04:35:07.947 回答