Я отправляю запрос POST через пакетный скрипт в Windows. Я вручную установил wget, и все отлично работает, но я бы хотел использовать cUrl, поскольку он недавно стал стандартной функцией Windows 10 и может быть запущен на других более новых компьютерах. Проблема в том, что cUrl выдает ошибку форматирования Json, несмотря на отсутствие каких-либо особых исключений символов.
Я пытался изменить цитаты на апострофы и наоборот, используя обратную косую черту и каретки в качестве escape-символов. Этот скрипт wget работает:
wget --quiet ^
--method POST ^
--header 'content-type: application/json' ^
--body-data '{"method":"passthrough", "params": {"deviceId": "[MyId]", "requestData": "{\"system\":{\"set_relay_state\":{\"state\":0}}}" }}' ^
--output-document ^
- 'https://eu-wap.tplinkcloud.com/?token=[MyToken]'
Однако в том же JSON в cUrl отказано:
curl -X POST -H 'content-type:application/json' -d '{"method":"passthrough","params":{"deviceId":"[MyId]","requestData":"{\"system\":{\"set_relay_state\":{\"state\":0}}}"}}' https://wap.tplinkcloud.com?token=[MyToken]
Спасибо за любой совет.