从 Angularjs 中的 Neo4j REST 响应访问 JSON 数据

Accessing JSON data from Neo4j REST response in Angularjs

我是一个需要休息的新手 angular,所以我希望我的问题的答案非常简单。

我在处理从新 Neo4j post transaction/commit 查询得到的 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 时,它什么也没显示,与正在解析.. 有人可以帮忙吗。

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