如何通过bolt协议获取模式(可能使用cypher命令)?

时间:2016-10-13 18:40:27

标签: neo4j cypher

在Neo4j浏览器中,我可以编写:SCHEMA来获取db中的索引列表。使用http,您可以执行类似curl http://localhost:7474/db/data/schema/index/的操作,我可以使用

pythonize
import requests
r = requests.get('http://localhost:7474/db/data/schema/index/')
r.json()

我可以通过bolt协议做同等的事情吗? requests无法处理InvalidSchema: No connection adapters were found for 'bolt://...'},并且由于:SCHEMA无效cypher,session.run(':SCHEMA')session.run('SCHEMA')都无效。

我无法使用http,因为我无法访问我的应用程序中的http端口(尽管通过http的请求似乎无论如何都会被破坏)。

1 个答案:

答案 0 :(得分:2)

您可以使用session.run('CALL db.constraints()')session.run('CALL db.indexes()')来获取架构的两个组件。你(我相信,如果你有更好的方法请纠正我),如果你想以编程方式跟踪它们,就必须解析结果单元格中的字符串。