[英]Cypher query via the REST endpoint : relationship not created
我正在使用Neo4j 2.0.1社區。 我嘗試通過REST端點發送查詢,以在圖中插入關系。
我的關系查詢非常簡單:
MATCH (t1:Test { name : 'TEST_1' }), (t2:Test { name : 'TEST_2' }) CREATE (t1)-[:REL_TEST]->(t2)
我在Powershell中這樣稱呼它:
$postParams = "{ `"query`" : `"MATCH (t1:Test { name : {test1} }), (t2:Test { name : {test2} }) CREATE (t1)-[:REL_TEST]->(t2)`",`"params`" : { `"test1`" : `"TEST_1`", `"test2`" : `"TEST_2`" } }"
Invoke-WebRequest -Uri http://localhost:7474/db/data/cypher -Method POST -Body $postParams -Headers @{"Accept"="application/json; charset=UTF-8";"Content-Type"="application/json"}
我得到以下回應:
StatusCode : 200
StatusDescription : OK
Content : {
"columns" : [ ],
"data" : [ ]
}
RawContent : HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Content-Length: 40
Content-Type: application/json; charset=UTF-8
Server: Jetty(9.0.z-SNAPSHOT)
{
"columns" : [ ],
"data" : [ ]
}
Forms : {}
Headers : {[Access-Control-Allow-Origin, *], [Content-Length, 40], [Content-Type, application/json; charset=UTF-8], [Server, Jetty(9.0.z-SNAPSHOT)]}
Images : {}
InputFields : {}
Links : {}
ParsedHtml : mshtml.HTMLDocumentClass
RawContentLength : 40
但是沒有建立關系。 如果然后在瀏覽器用戶界面中鍵入相同的查詢,它將起作用。 我沒有做錯什么,特別是因為查詢在瀏覽器中有效,而REST調用過程例如可用於插入節點。
您確定查詢無法正常工作。 您不會返回任何數據,因此有可能在您不知道的情況下創建了這些數據。
你可以嘗試這樣的事情
MATCH (t1:Test{name: {test1}}), (t2:Test{name: {test2}})
CREATE (t1)-[rel:REL_TEST]->(t2)
RETURN rel
如果您沒有在響應中得到rel
,則意味着未創建相關結果,可能是因為至少有一個MATCH
失敗。 嘗試同時返回t1
和t2
,以查看它們是否按預期工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.