使用 $.ajax 加载 XML 不起作用 [重复]

Posted

技术标签:

【中文标题】使用 $.ajax 加载 XML 不起作用 [重复]【英文标题】:Loading XML using $.ajax not working [duplicate] 【发布时间】:2012-05-06 20:23:05 【问题描述】:

可能重复:XML parsing in jquery doesn't seem to work for meAccess-Control-Allow-Origin error sending a jQuery Post to Google API's

我正在尝试从 Google 的天气 API 加载数据。当我运行这段代码时:

$.ajax( 
    type: "GET",
    url: "http://www.google.com/ig/api?weather=13210",
    dataType: "xml",
    success: function(xml)     
);

我收到以下消息:XMLHttpRequest 无法加载 http://www.google.com/ig/api?weather=13210。 Access-Control-Allow-Origin 不允许 Origin null。

为什么我会收到此消息?我不熟悉将 XML 加载到 jquery 中。

【问题讨论】:

之前好像有人问过这个问题:***.com/questions/6114436/… 检查我的编辑器... 如果你得到了你想要的信息,不要忘记投票并将答案标记为已接受.. 【参考方案1】:

不幸的是,您无法直接从

加载 XML
http://www.google.com/ig/api?weather=13210

仅使用 jQuery/javascript。 Same origin policy 可以防止这种情况。而且 Google 也不会发送 Access-Control-Allow-Origin 标头(这可能允许访问)。

唯一的方法是从服务器端加载它。

【讨论】:

以上是关于使用 $.ajax 加载 XML 不起作用 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

.ajax 在 IE 中不起作用 [重复]

PHP Ajax文件上传不起作用[重复]

Spring引导资源getFile()不起作用[重复]

使用 AJAX 重新加载部分视图不起作用

AJAX 加载内容后滚动条不起作用

Angular 在 jQuery Ajax 加载页面中不起作用