【问题标题】:Javascript promise handle 404Javascript 承诺句柄 404
【发布时间】:2015-10-20 22:02:51
【问题描述】:

我有这个代码:

promise.success(function (data) {

            //do something

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

url 没问题,但如果用户不存在,api 将返回 404 错误(故意)。

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

【问题讨论】:

    标签: javascript jquery xmlhttprequest promise


    【解决方案1】:

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

    here

    更新

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

    【讨论】:

    • 这是正确的。浏览器负责记录不成功的值(404、500 等),而不是您正在使用的 JS 库。您能否返回 404 以外的内容(例如 204 - 无内容,但浏览器将其视为成功响应)。您还可以让您的 API 返回一个包含成功变量的标准化对象并检查它。或者你只是忽略控制台中的 404 行...
    • 明白!非常感谢!
    猜你喜欢
    • 2015-10-24
    • 2018-12-27
    • 2014-03-21
    • 1970-01-01
    • 2016-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-03
    相关资源
    最近更新 更多