对于我的生活,我无法弄清楚为什么我在使用下面的bode位进行AJAX请求时会出现错误。当页面加载,并且警告弹出绝对没有关于请求失败原因的有用信息时,响应代码在firebug中为200,readyState,并且弹出时状态为0,并且responseText为空。我可以使用浏览器访问请求就好了。我只是去了错误回调函数:
<script src="/static/js/jquery-1.6.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
function loadData(url, container) {
var data =[];
$.ajax({
url: url,
dataType: 'json',
data: data,
success: function(data) {
var obj = jQuery.parseJSON(data,container);
alert(container);
},
error: function(xhr,err) {
alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
alert("responseText: "+xhr.responseText);
}
});
};
loadData( 'http://api.giantbomb.com/genres/?api_key=####&format=json', '#genres-pane');
});
</script>
提前谢谢
答案 0 :(得分:1)
看起来您正在尝试以JSON的形式执行跨域请求,这意味着在后端使用XmlHttpRequest。由于same origin policy,这是不允许的。尝试将您的数据类型更改为“jsonp”。您还需要将您的网址format
参数从“json”更改为“jsonp”。
答案 1 :(得分:-1)
Firefox的FireBug会显示所有请求,帖子,回复等。对于这类内容非常有用。