首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cypher查询不工作于node.js,而是从neo4j控制台工作

Cypher查询不工作于node.js,而是从neo4j控制台工作
EN

Stack Overflow用户
提问于 2015-09-04 04:55:49
回答 2查看 972关注 0票数 2

我正在尝试用node.js模块编写一个与neo4j一起工作的node-neo4j应用程序。我试图从nodejs提交一个查询,发现它不起作用,所以我尝试从neo4j browser console提交它,以便更容易地从根本上解决我的错误,并发现它在那里正常工作。对发生了什么事有什么想法吗?

查询:

代码语言:javascript
复制
Match (a:Paper { uid:26327110, citation:"Seitz A.  \"Moving beyond a binary view of specificity in perceptual learning.\" Journal of vision. 15 12 (2015 Sep 1): 1422.", date:"2015 Sep 1"}) return a
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-04 05:44:19

在这种情况下,结果发现我只是个白痴--错误发生的原因是我创建了一个新数据库,使用了新密码,并且忘记了调整节点服务器的身份验证。如果您有类似的问题,并且在您的节点控制台中看到以下错误:[Error: HTTP Error 401 when running the cypher query against neo4j. undefined: undefined],那么您也有一个白痴的案例。正如Kunal在对原始问题的评论中所建议的,检查您的认证。

票数 2
EN

Stack Overflow用户

发布于 2015-09-04 05:04:12

无论如何,您可能应该使用参数,它们可能有助于解决任何编码问题。看起来是这样的:

代码语言:javascript
复制
var query_string = "MATCH (a:Paper {attributes}) RETURN a"

var attributes = {uid: 26327110, citation: "Seitz A. \"Moving beyond a binary view of specificity in perceptual learning.\" Journal of vision. 15 12 (2015 Sep 1): 1422.", date: "2015 Sep 1"};

db.cypherQuery(query_string, {attributes: attributes});

当然,如果您愿意,可以为单个值使用单独的参数。参数不仅可以帮助您不必担心编码,还可以让Neo4j缓存查询。此外,如果您从用户参数传入值,也可以帮助您防止注入攻击。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32390356

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档