在 nodejs 中运行 Neo4j 查询 returns "undefined"
Running Neo4j query in nodejs returns "undefined"
我正在尝试从 nodejs 运行针对 neo4j 数据库的查询。这是我在 nodejs 中的 app.get 中的代码:
var query = 'match (t {name:"Tom Hanks"}) return t';
var params={limit: 10};
cypher(query,params,cb);
这里是执行查询的密码函数定义:
function cypher(query,params,cb) {
request.post({uri:txUrl,
json:{statements:[{statement:query,parameters:params}]}},
function(err,res) { cb(err,res.body);});
}
最后,这是 cb 函数定义:
var cb = function(err,data) {
console.log(JSON.stringify(data));
};
并且我设置的数据库路径如下:
var txUrl = 'http://localhost:7474/db/data';
在node js中运行代码后。我刚刚在控制台中收到错误 "undefined"。很难用这个线索进行调试。在此之前,我得到了类似形式 "variable x is undefined" 的错误。但是现在,我被困住了。有谁知道找到问题的根源吗?
你应该输出err
参数,然后你应该也会看到错误信息。
尝试跟上 javascript/node 的速度,首先是约定,这将避免您产生这样的误解。
你的URL错了,应该是:
var txUrl = 'http://localhost:7474/db/data/transaction/commit';
此外,您的参数未在任何地方使用。
并且您应该在匹配中使用 标签,例如 :Person
或 :Actor
我认为你最好使用 Javascript 的驱动程序,请参阅 http://neo4j.com/developer/javascript
我正在尝试从 nodejs 运行针对 neo4j 数据库的查询。这是我在 nodejs 中的 app.get 中的代码:
var query = 'match (t {name:"Tom Hanks"}) return t';
var params={limit: 10};
cypher(query,params,cb);
这里是执行查询的密码函数定义:
function cypher(query,params,cb) {
request.post({uri:txUrl,
json:{statements:[{statement:query,parameters:params}]}},
function(err,res) { cb(err,res.body);});
}
最后,这是 cb 函数定义:
var cb = function(err,data) {
console.log(JSON.stringify(data));
};
并且我设置的数据库路径如下:
var txUrl = 'http://localhost:7474/db/data';
在node js中运行代码后。我刚刚在控制台中收到错误 "undefined"。很难用这个线索进行调试。在此之前,我得到了类似形式 "variable x is undefined" 的错误。但是现在,我被困住了。有谁知道找到问题的根源吗?
你应该输出err
参数,然后你应该也会看到错误信息。
尝试跟上 javascript/node 的速度,首先是约定,这将避免您产生这样的误解。
你的URL错了,应该是:
var txUrl = 'http://localhost:7474/db/data/transaction/commit';
此外,您的参数未在任何地方使用。
并且您应该在匹配中使用 标签,例如 :Person
或 :Actor
我认为你最好使用 Javascript 的驱动程序,请参阅 http://neo4j.com/developer/javascript