从ASPX站点检索AJAX的XML数据



我想使用AJAX检索并处理一些XML跨域数据。这是我的代码:

$(document).ready(function(){
   $.ajax({
      url: "http://www.synthesiagame.com/scoreboardFeed.aspx?p=c71067ca61fb1c8f3dc9e56dd58cd028_ee7c7e67ec3bc17a08b648fc77802697_f334fca735419b6074f78d82fcc9904d",
      type: "POST",
      dataType: "jsonp xml",
      success: function(data) {
         alert($(data));
         $(data).find('score').each(function(){
            $("#testing").append($(this).attr("points") + "<br />");
         });
      }, error: function(jxhr, status, err) {
            alert("Ajax error: status = " + status + ", err = " + err);
         }
   });
});

这显示了Alert()消息,但是它不会处理XML数据。但是,如果我将带有XML数据的文件放在服务器上,因为URL可以很好地工作。

我已经尝试完成这项工作了两天。我一定已经阅读了该网站上的所有问题,这些问题涉及类似的主题,没有解决问题解决我的问题。我开始认为,当他们回答请求时,他们提出数据的方式可能存在一些问题。

这是行不通的。返回的文件未包装在函数中,因此无法调用JSONP回调。没有包装功能或"填充"。

JSONP仅在将数据返回的数据包裹在功能中时起作用。然后jQuery将评估该功能并为您提供结果对象。

获得跨域XML的唯一方法是使用某种代理将页面送回您自己的域中。您之所以使用自己的XML的原因是因为它在您的域中,因此没有冲突。

这是一个很好的教程,讲述了如何使用PHP代理执行此操作。如果您无法使用PHP,则必须找到另一种方法来将该文件获取在您的域中。

最新更新