AJAX请求无法检索xml

时间:2014-08-06 20:50:47

标签: javascript jquery ajax xml

我想在https://www.reddit.com/r/gifs/hot.xml上致电GET。我收到一条警报,说请求已经通过。问题是当我对它进行简单的解析并在警报中输出结果时,会显示页面的HTML代码。现在我不确定我现在是否首先收到了正确的数据。我是否错误地调用了AJAX?

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<script language="javascript" type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<!--<script src="tasklist.js"> </script>-->
<script>
 /*   $(document).ready(function(){
    Listing();
});*/


(function($){Listing=function(){        
 $.ajax({   
URL:'https://www.reddit.com/r/gifs/hot.xml',
dataType:"xml",

type: "GET",
success: function (data) {    
    alert(data);
    var xmlDoc= new XMLSerializer().serializeToString(data);

    alert(xmlDoc.toString());
},
error: function (data) { alert(0) }  
})
}})(jQuery);



</script>
</head>

<body>
<script>Listing();</script>
<div id="List"></div>
</body>

1 个答案:

答案 0 :(得分:0)

首先,您的网址参数不正确。它必须全部小写(&#39; url&#39;)。 即使你修复了它,它也无法工作,因为你正在发出跨域请求。在此处阅读:http://en.wikipedia.org/wiki/Same-origin_policy

一种可行的方法是让您自己的服务器调用reddit并将数据发送回浏览器。也可以在iframe中加载该xml并访问该文档,但我不确定它是否可行。