Ошибка при обновлении диалогового узла через вызов POST в watson через curl - PullRequest
0 голосов
/ 11 мая 2019

Я пытаюсь выполнить вызов POST для обновления узла диалога помощника Ватсона, но получаю сообщение об ошибке {"error": "Invalid CSRF Token"}.

Моя команда curl:

curl -H "Тип содержимого: application / json" -X POST -u "03abc-6def3-4sds53-9red-394aaaaaaaaaaaae2: passwprd" -d "{\" dialog_node \ ": \" handler_40_133229823644 \ ", \ "type \": \ "event_handler \", \ "условий \": \ "$ version == null \", \ "parent \": \ "slot_39_1521312319823644 \", \ "previous_sibling \": \ "handler_41_1543623423444 \" , \ "output \": {}, \ "context \": {\ "temp \": \ "$ version == null \", \ "sys_options \": [{\ "label \": \ "19.5 0,0 \ "\ "значение \": \ "1950 \"}, {\ "ярлык \": \ "19.2.1 \", \ "значение \": \ "1921 метка \"}, {\" \ ": \" 19.2.0 \», \ "значение \": \ "1920 \"}, {\ "ярлык \": \ "18.11.1 \", \ "значение \": \ "1812 \" }, {\ "ярлык \": \ "18.11.0 \", \ "значение \": \ "1811 \"}, {\ "ярлык \": \ "18.8.1 \", \ "значение \" : \ "1881 \"}, {\ "ярлык \": \ "18.8.0 \", \ "значение \": \ "1880 \"}, {\ "ярлык \": \ "18.5.1 \" \ "значение \": \ "1851 \"}, {\ "ярлык \": \ "17.5.0 \", \ "значение \": \ "1851 \"}]}, \ "действия \": null, \ "метаданные \": {}, \ "имя-события \": \ "input \"} "" https://assistant -us-south.watsonplatform.net / rest / v1 / workspaces / adjs42424-73423de- 324dd-d397-affasdsade234ad27 / dialog_nodes / handler_40_154asdasd823644"

1 Ответ

0 голосов
/ 13 мая 2019

Я думаю, что вам не хватает версии в URL.Из документации API - https://cloud.ibm.com/apidocs/assistant#update-dialog-node это должно быть что-то вроде -

curl -u "apikey:{apikey}" -H "Content-Type: application/json" -X POST -d "{\"output\":{\"generic\":[{\"response_type\":\"text\",\"values\":[{\"text\":\"Hello! What can I do for you?\"}]}]}}" "https://gateway.watsonplatform.net/assistant/api/v1/workspaces/{workspace_id}/dialog_nodes/greeting?version=2019-02-28"

Пример не включает узел диалога как часть структуры -d json, а использует IAMКлюч вместо идентификатора пользователя / пароля.Хотя, если ваши служебные учетные данные все еще основаны на идентификаторе пользователя и пароле, они все равно должны работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...