2011-02-25 40 views
1

我需要使用$ .ajax或$ .get从xml文件获取响应。 问题是$ .ajax或$ .get函数似乎没有从远程服务器中的文件获得响应。它显然只适用于本地文件。我正在从本地服务器开发网站,所以我的服务器主机就像127.0.0.1/。有谁知道这个问题?或者有无论如何,我可以根本调试这个问题?我想我已经阅读了浏览器不允许跨站点AJAX呼叫的地方..但是,我怎样才能进行远程主机呼叫?

<script> 
$(document).ready(function(){ 
    $.ajax({ 
     url: "<?=$request_url?>", 
     data: "<?=$data?>", 
     success: function(msg){ 
     alert("Data Saved: " + msg); 
     }, 
     error: function(XMLHttpRequest, textStatus, errorThrown) { 
      $("#output").append(XMLHttpRequest.responseText + "<br />TextStatus: " + textStatus + "<br />ErrorThrown: " + errorThrown); 
     } 
    }) 
}); 
</script> 
+0

你不能做远程请求,不是那样的,至少。 – yoda 2011-02-25 04:09:52

回答

1

是的,这是正确的,因为您无法使用这些方法访问另一个域上的内容。这是一个跨域脚本安全问题。

看看XSS与jQuery和Javascript的关系。

0

幸运的是,你不能因为跨域策略。但是,您可以通过调用$.ajax调用来调用服务器端脚本,然后调用远程站点脚本。