durandal路由器激活器捕获401异常

时间:2014-07-09 17:00:34

标签: http knockout.js durandal

在激活先前授权的路线时,捕捉未授权401的最佳位置在哪里。例如,当授权令牌不再有效时,如果用户尝试激活路由,则会发生401错误。 Durandal中的异常是在activateItem级别引发的,不知道如何为它定义全局处理程序。

请注意。 mapUnknownRoutes在这种情况下没用[/ p>

1 个答案:

答案 0 :(得分:0)

您可以从调用API的任何地方接听电话。如果你使用jQuery进行调用,你会使用fail方法处理AJAX调用失败 -

$.ajax({
    url: url,
    data: { start: start, end: end },
    success: function(data, textStatus, jqXHR) {
        $('#myElement').append(data);
    },
    error: function(jqXHR, textStatus, errorThrown) {
        if (jqXHR.status === '401') {
            // do something
        }
    }
});

这为您提供了状态代码,我无法记住它是否为字符串或整数格式,以便显然是伪代码