如何处理空的JSON响应?

时间:2017-11-16 09:48:32

标签: javascript json

[]

这是我在调用Web服务时得到的JSON响应。如果响应为空,我需要打印无显示

$http({ 
        method:'POST', 
        url: 'http://xxxxxx',
        headers: { 
           Content-Type: 'application/json', 
           Accept: 'application/json'
        }, 
        data: JSON.stringify(x)
}).then(function (response) { 
        $scope.details=response.data;
        if($scope.invoiceDetails == null){
           console.log("nothing to show");
        }
    });

这是我现在使用的代码。但它没有用。有人请给我一些建议。

4 个答案:

答案 0 :(得分:1)

你可以使用这样的东西

if (response.data.length === 0)
{
    console.log("nothing to show");
}

答案 1 :(得分:1)

if ($scope.details.length === 0)
{
    console.log("nothing to show");
}

答案 2 :(得分:-1)

您正在检查if条件中的其他变量。

  $http({ method:'POST', 
                url: 'http://xxxxxx',
                headers: { 
                'Content-Type': 'application/json', 
                'Accept': 'application/json'
                }, 
                data: JSON.stringify(x)
                 }).then(function (response) { 

     $scope.details=response.data;

    if(!$scope.details){
    console.log("nothing to show");
    }

    OR
    //if your details is an array
    if(!$scope.details || $scope.details.length <= 0){
    console.log("nothing to show");
    }

    //You can also check for empty objects like this
    if(angular.equals({}, $scope.items)){
    console.log("nothing to show");
    }

答案 3 :(得分:-1)

if (response!=undefined)
{
    //your code here
}
else{
console.log("nothing to show");
}

类似这样的事情