尝试使用 jQuery 构建一个简单的 AJAX 请求。这是咖啡脚本:
$('#ad_id_string').blur(function() {
var self, idString, adURL;
self = $(this);
if (self.val() != "") {
idString = self.val();
adURL = "/advertisements/" + idString;
$.ajax({
url: adURL,
type: "GET",
dataType: "json",
data: "",
async: false,
contentType: "application/json",
success: function(response, textStatus, jqXHR) {
console.log(response);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log("Failed - " + textStatus + " : " + errorThrown);
}
});
}
});
Firefox 执行请求没有问题,并且 JSON 按预期返回。但是,Chrome 甚至拒绝发送请求。相反,它给出了这个错误:NETWORK_ERR: XMLHttpRequest Exception 101
我试过设置async:true
而不是false
,以及async
一起删除参数。这只会导致 chrome 在发送之前使请求失败,而不会出现任何类型的错误。我的 Q/A 人员将在 Chrome 或 Safari 中对此进行测试,因此它需要在这些浏览器中运行。