Javascript 在使用REST时接收到404错误后允许继续执行代码
我正在开发一个工具,允许用户键入一些ID,并检查数据库中是否存在这些ID 该代码是为使用SOLR数据库而编写的,因此,如果ID不存在,就没有问题。现在,虽然我正在与CouchDB交谈,但是如果ID不存在,该工具将不会给出任何结果并产生404错误:404(未找到对象) 这是我的密码:Javascript 在使用REST时接收到404错误后允许继续执行代码,javascript,rest,Javascript,Rest,我正在开发一个工具,允许用户键入一些ID,并检查数据库中是否存在这些ID 该代码是为使用SOLR数据库而编写的,因此,如果ID不存在,就没有问题。现在,虽然我正在与CouchDB交谈,但是如果ID不存在,该工具将不会给出任何结果并产生404错误:404(未找到对象) 这是我的密码: // ... function caller() { if (validIDs.length === 0) { promise.resolve();
// ...
function caller() {
if (validIDs.length === 0) {
promise.resolve();
return;
}
var ID = validIDs.pop();
var url = preURL + ID;
var wrappedResult = {
"ID": ID,
"data": undefined
};
$.getJSON(url).done(function(data) {
wrappedResult["data"] = data;
caller();
});
wrappedResults.push(wrappedResult);
}
caller();
return [promise, wrappedResults];
}
我试着使用类似于:
$.getJSON({
url: url,
dataType: "json",
success: function(data) {
wrappedResult["data"] = data;
myForEach();
alert('success');
},
error: function(data) {
alert('error');
},
complete: function(xhr, data) {
if (xhr.status !== 0)
alert('success');
else
alert('fail');
}
});
但它没有起作用。html不显示表,在控制台中:404(未找到对象)
我看了其他类似问题中提出的解决方案,但它们并没有解决我的问题
请问我的代码是否有办法继续显示接受ID的结果并指出无效ID?jQuery Ajax 404处理没有回答我的问题。 解决问题的方法是使用 var jqXHR=$.ajax({ url:url, 键入:“获取”, }); 而不是 jqXHR.done(函数(数据){ .....}); 我曾经 始终(函数(jqXHR、textStatus、errorshown){ ........});
控制台仍显示404(未找到对象),但代码未停止且正在工作您所说的“未工作”是什么意思?你有错误吗?控制台中是否有任何内容?是的,控制台显示url并写入:404(未找到对象)。可能与您使用的jquery版本重复,这对我不起作用?