不能使用KOA-NEO4J库来传递参数

我正在尝试创build一个连接到NEO4J实例的REST API。 我使用koa-neo4j库作为基础( https://github.com/assister-ai/koa-neo4j-starter-kit )。

下面的第一个例子工作正常。 当我打到端点“myapp / metric”时,我从数据库中得到预期的结果。

Index.js

//Return all metrics from the database app.defineAPI({ method: 'GET', route: '/api/v1/imm/metric', cypherQueryFile: './src/api/v1/imm/metric/metric.cyp' }); 

metric.cyp

 MATCH (a:metric) RETURN a AS metric 

我试图build立在这个例子创build一个端点,我可以传递一个参数,将在密码查询中使用我跟随了文档,并结束了下面。

Index.js

 //Return all metrics from the database matching a specific metric name app.defineAPI({ method: 'GET', route: '/api/v1/imm/metric/:metricname', cypherQueryFile: './src/api/v1/imm/metric/metric-by-name.cyp' }); 

指标按name.cyp

 MATCH (a:metric {name: $metricname }) RETURN a AS metric 

当我打到端点“myapp / metric / TestMetricName”时,我只是收到一条来自Neo4j的错误消息。

ConflictError:执行Cypher时出错:Error:variables$metricname not defined(line $metricname (offset:23))“MATCH(a:metric {name:$ metricname})”

它看起来像代码不换出占位符$ metricname在密码查询为我已经通过的值(例如TestMetricName)。

任何帮助赞赏。

由于Cypher中3.1.10-M06参数的新语法($ param而不是{param})。 库的文档和示例koa-Neo4j使用最新版本。

所以试试{param}而不是$param

https://github.com/neo4j/neo4j/wiki/Neo4j-3.1-changelog#310-m06

https://github.com/neo4j/neo4j/pull/7558