2015-10-20 49 views
0

我有这样的代码:的Javascript承诺办理404

promise.success(function (data) { 

      //do something 

}).fail(function() { 
    //handle 404, don't let the browser log it 
}); 

的网址是好的,但如果用户不存在,该API将返回404错误(故意)。

浏览器记录错误...是否有可能避免它,并显示不同的消息?

回答

1

浏览器的开发工具将始终显示失败的请求,但是您可以通过返回“失败”回调中的值来从被拒绝的承诺中恢复。

请参阅here

UPDATE

promise.success(function (data) { 
    //do something 
}).fail(function() { 
    return true; // or return { error: true, reason: "some reason" }; 
}); 
+0

这是正确的。浏览器是处理日志记录非成功值(404,500等),而不是你正在使用的JS库。你能否返回404以外的内容(例如204 - 没有内容,但浏览器将其视为成功的响应)。你也可以让你的API返回一个标准化的对象,它有一个成功的变量,并检查它。 或者你只是忽略了控制台中的404行... – molson504x

+0

了解!非常感谢你! –