Angular $resource 和 errorResult JSON 处理

Angular $resource and errorResult JSON handling

我有一个 Spring Rest 服务公开,来自 Angular 控制器,使用 Angular 资源服务与它通信。在我的服务中,我实现了异常处理和标准错误响应,我 return 一个 Json 对象,其中包含 errorCode、erorrMessage 和 errorDescription 等数据。

现在我想在 errorResult 中处理 Json 就像在 successResult 中一样,以便在网页上显示 errorDescrption。我该怎么做?

这是资源服务使用示例:

   var configGet = config.get({}, function(successResult) {
        $log.debug("Service responded successfully");
        $log.debug(successResult);
        $scope.data = successResult.content;
        $scope.totalItems = successResult.totalElements; 
    }, function(errorResult) {
        $log.error("Service responded with ERROR");
        //How to get errorDescrption  from erorrResult?
    });

正如您在问题中提到的那样,您正在 returning Json 以防出现错误,同时使用正确的 errorCode 和 errorMessage ,因此您可以像这样在成功块中轻松处理。

此处 Ajax 请求将 return 成功阻止,即使您的服务中有任何异常处理也是如此,因为在服务端您正在 return 正确 json错误的情况也

var configGet = config.get({}, function(successResult) {
            if (successResult.errorMessage == "something" && successResult.errorCode=="codeNumber") {

                $log.error("Error Occured");

            } else {
                $log.debug("Service responded successfully");
                $log.debug(successResult);
                $scope.data = successResult.content;
                $scope.totalItems = successResult.totalElements;
            }
        }, function(errorResult) {
            $log.error("Service responded with ERROR");
            //How to get errorDescrption  from erorrResult?
        });

好的,我得到了解决方案,它很简单,我不知道我怎么没看到...

得到错误描述很简单:

var errorDescrption  = errorResult.data.errorDescrption