Что не так с этим запросом Cypher?

Я пытаюсь отправить в Neo4j следующее, используя интерфейс REST, в частности, метод, указанный в руководстве 2.2.9 по использованию REST из Java, запрос sendTransactional Cypher. Однако, как вы можете видеть ниже, я продолжаю получать ошибку, которая, кажется, не имеет ничего общего с самим запросом.

Любые советы о том, как я могу отладить это?

CREATE (p:player { props }), "parameters" { 
     "props" : { 
          "screen_name" : "testone", 
          "email" : "[email protected]", 
          "rank" : "-12", 
          "password" : "testonepass", 
          "details" : "test one details", 
          "latitude" : "0.0", 
          "longitude" : "0.0", 
          "available" : "true", 
          "publish" : "true" }}
{"results":[],"errors":[{"code":"Neo.ClientError.Request.InvalidFormat","message":"Unable to deserialize request: Unexpected character ('p' (code 112)): was expecting comma to separate OBJECT entries\n at [Source: HttpInputOverHTTP@10401de; line: 1, column: 66]"}]}

person garey    schedule 06.05.2016    source источник
comment
В ошибке говорится, что это шокирует на p:, поэтому я не понимаю, как я продолжаю получать ошибку, которая, похоже, не имеет большого отношения к самому запросу. подать заявление   -  person    schedule 06.05.2016
comment
Возможно, вы неправильно строите запрос. См. этот вопрос stackoverflow.com/questions/26989613/   -  person antorqs    schedule 06.05.2016
comment
Да, но он также возражает против столбца 66, в котором нет символа «p».   -  person garey    schedule 06.05.2016
comment
отсутствует двоеточие после параметров?   -  person manonthemat    schedule 07.05.2016


Ответы (1)


Из фрагмента, который вы опубликовали, похоже, что полезная нагрузка для конечной точки транзакции неполная. Вы можете попробовать это утверждение в браузере. Я просто скопировал ваше заявление и отформатировал его, чтобы его можно было опубликовать в браузере. Тогда вы, по крайней мере, увидите, как это работает. Очевидно, что данные публикуются, и кажется, что это просто сводится к форматированию.

:POST /db/data/transaction/commit {
"statements": [
    {
        "statement": "CREATE (p:player { props })",
        "parameters": 
            {
                "props" : { 
                    "screen_name" : "testone", 
                    "email" : "[email protected]", 
                    "rank" : "-12", 
                    "password" : "testonepass", 
                    "details" : "test one details", 
                    "latitude" : "0.0", 
                    "longitude" : "0.0", 
                    "available" : "true", 
                    "publish" : "true" }  
             }
        }
    ]
}
person Dave Bennett    schedule 06.05.2016
comment
Следуя коду в учебнике руководства, «операторы» и «операторы» добавляются позже. Прости, что забыл об этом. Вот полный запрос и ответ: - person garey; 07.05.2016