Как экранировать JSON-символ в команде curl Arduino - PullRequest
0 голосов
/ 20 апреля 2019

Я хочу команду curl в linux arduino YUN, в команде curl содержится приложение JSON. Моя команда может выполняться в терминале Linux, но при запуске в Arduino IDE с помощью runShellCommandAsynchronously (); команда curl не выполняется

process Fav;
Fav.runShellCommandAsynchronously("curl -X POST -H 'Content-Type:application/json' -H 'Accept:application/json' -H 'apiKey:eyJh-CV5GrI0jg_r1nDzg' -d '{\"device_developer_id\" : \"ArduinoYun@haikal\", \"data\":{\"WaterLevel\": "+String(volume)+"} }' -g 'http://api.favoriot.com/v1/streams'");

Он должен выполнить команду curl, вернуть 200 OK статуса. И я считаю, что проблема в том, что в JSON есть escape-символ. Как экранировать специальный символ в JSON для функции arduino:

runShellCommandAsynchronously()

Мои данные JSON в этой функции:

-d '{\"device_developer_id\" : \"ArduinoYun@haikal\", \"data\":{\"WaterLevel\": "+String(volume)+"} }'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...