在路由配置(Angular)中拒绝承诺时,如何重定向到404?

Ken*_*nne 3 angularjs angularjs-routing

如果在尝试加载资源时,如果在URL中使用URL中的参数加载API,那么将客户端重定向到错误路由的最佳方法是什么?

当某人访问例如orders/1时,他们会看到订单,但如果其中一个没有访问,订单未找到或发生任何其他异常,那么最好如何处理?

Gal*_*ldo 6

你可以使用像这个问题中建议的截取者:

AngularJS的全局Ajax错误处理程序

当资源请求将从服务器返回时,它将首先命中拦截器.您可以检查响应的状态并根据需要做出反应.


Aru*_*hny 6

您可以使用$ routeChangeError事件

$scope.$on('$routeChangeError', function(arg1, arg2, arg3, arg4){
    if(arg4.status == 404) {
        $location.url('/my-error-route');
    }
});
Run Code Online (Sandbox Code Playgroud)