我想在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>
答案 0 :(得分:0)
首先,您的网址参数不正确。它必须全部小写(&#39; url&#39;)。 即使你修复了它,它也无法工作,因为你正在发出跨域请求。在此处阅读:http://en.wikipedia.org/wiki/Same-origin_policy
一种可行的方法是让您自己的服务器调用reddit并将数据发送回浏览器。也可以在iframe中加载该xml并访问该文档,但我不确定它是否可行。