2

我是一个有休息和角度的新手,所以我希望我的问题的答案非常简单。

我在处理从新的 Neo4j 事务/提交后查询获得的 JSON 响应时遇到问题。

我想访问响应中每个项目的响应数据。我搜索了其他人如何处理这个问题,但没有发现相同的情况。我想我根本不解析响应,也无法访问特定的行。

这是我的代码,它只打印所有的 json。

JS控制器

function restcall($scope, $http) {

  var call = '{ "statements" : [ { "statement" : "MATCH (n:Cars) RETURN n ORDER BY n.initRank DESC LIMIT 10" } ] }';

  $http({
                method: 'POST',
                url: 'http://myserver:7474/db/data/transaction/commit',
                data: call,

 })
 .success(function (data, status) {
                        $scope.status = status;
                        $scope.response = data.results;
            })
 .error(function (data, status) {
                        $scope.response = data || "Request failed";
                        $scope.status = status;
            })

        };

仅打印出完整响应的 HTML

<section ng-controller="restcall">
        <h2>{{status}}</h2>
        </br></br>
        <h3>{{response}}</h3>
</section>

最重要的是我得到的 JSON 响应

{

"results":[{

    "columns":[
        "n"
    ],

    "data":[
        {"row":[{"name":"Car1","initRank":"..."}]},
        {"row":[{"name":"Car2","initRank":"..."}]},
        {"row":[{"name":"Car3","initRank":"..."}]},
        {"row":[{"name":"Car4","initRank":"..."}]},
        {"row":[{"name":"Car5","initRank":"..."}]},
        {"row":[{"name":"Car6","initRank":"..."}]}]
}],

"errors":[]

}

所以基本上现在我只是在 html 中打印出我的 json 响应。

现在,我如何访问各个行以获取即 Car3 属性?

我尝试了 data.results[0][0].data... 并且还解析了我的字符串,但是当我添加下一个 .data 时,它只是不显示任何东西,与解析相同..有人可以帮忙吗.

4

1 回答 1

1

根据该 JSON 响应,您将使用data.results[0].data[2].row[0].initRank访问 Car3 的“initRank”。您不需要对响应进行任何额外的解析。它应该已经是您的回调中的一个对象。

于 2015-09-17T16:00:15.267 回答