我有一个ajax调用,当发出错误的请求时,我总是遇到错误。当提出一个好的请求时,它确实有效。我已经尝试过jsonp和所有这些东西,但这并没有进一步帮助我。
这是错误
XMLHttpRequest cannot load No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
这是我的代码。
var submit = function(){
var url = ""
var data = ["9b4e749d5cb6e069dd49cab93a69","aufujishngidrg"]
for(var int = 0; int < data.length; int++) {
console.log(data[int])
url = *insert url*
$.ajax({
type:'GET',
url:encodeURI(url),
dataType: "json",
contentType:"application/json; charset=utf-8",
error:function (xmlHttpRequest,textStatus, xhr, ajaxOptions, thrownError) {
if(xmlHttpRequest.readyState == 0 || xmlHttpRequest.status == 0){
console.log("xmlhttpRequest error")
return;
}
else{
console.log("error")
}
},
success:function(data){
console.log(data)
},
});
}
console.log("derp")
}
我从列表中发送一个哈希码,如果它在数据库中,服务器会返回一个 id。
跨域通信在服务器端启用,因此这应该不是问题,因此良好的请求确实有效。当列表中存在未知哈希时,我收到此htttpxmlrequest错误并且循环中断。
问题是:如何捕获错误并不断迭代?
尝试将 ajax 调用包装在 try catch 语句中以吞下错误
try {
$.ajax{
error: function(xmlHttpRequest,textStatus, xhr, ajaxOptions, thrownError){
throw(thrownError)
}
success: function(){}
}
} catch(err) {
continue;
}