Angularjs 如果资源返回错误代码400,则路由解析不起作用

Angularjs 如果资源返回错误代码400,则路由解析不起作用,angularjs,angularjs-routing,resolve,Angularjs,Angularjs Routing,Resolve,在我的app.js中,我有: resolve : { resetCodeCheckData : function(resource) { return resource.get().$promise; } } 但是,如果资源的结果设置了400头,那么控件甚至不会传递给控制器。在收到ajax调用响应后,执行立即结束。我如何解决这个问题 $res

在我的app.js中,我有:

 resolve : {
                    resetCodeCheckData : function(resource) {
                            return resource.get().$promise;
                    }
        }

但是,如果资源的结果设置了400头,那么控件甚至不会传递给控制器。在收到ajax调用响应后,执行立即结束。我如何解决这个问题

$resource默认情况下返回承诺。如果解析失败,控制器中的“resetCodeCheckData”将是一条错误消息或您在资源服务中设置的任何自定义消息

resolve: {
    resetCodeCheckData: ['SomeResourceService',function(SomeResourceService){
      return SomeResourceService.get();
      // return SomeResourceService.query();
    }];
}

当然你不能,这是你想要的行为,顺便说一句,它应该是resetCodeCheckData:function(resource){return resource.get().$promise;}编辑了代码。谢谢但为什么这是不受欢迎的行为?如果我在控制器中调用相同的资源,并且头receiving 400错误,那么它可以正常工作。我真的不知道为什么那些有棱角的人会走到这一步,但总的来说,如果请求调用失败,我觉得这是一个好的点,什么都不做,但我什么都不做,只有在解析时,而不是在控制器中?承诺失败,什么都不做意味着不传递到其他路由器,阅读我尝试之前发布的链接。但是,流量并没有传递到controller@BhumiSinghal添加一个带有更多代码的plunkr或jsfiddle来仔细查看。添加一个plunkr不会有帮助,因为我需要从那里调用我的web脚本,我希望避免这样做