Синтаксическая ошибка CURL - PullRequest
0 голосов
/ 10 июня 2018

Я пытаюсь использовать CURL, чтобы поместить данные JSON в мой запрос, используя следующий синтаксис:

curl -X POST -H "Content-Type: application/json" -d '{"firstName":"First", "lastName":"last", "email":"user@xyz.com", "username":"user1", "password":"pass1"}' 127.0.0.1:3001/users

теперь CMD показывает эту ошибку: as you can see

Пожалуйста, помогите!

Ответы [ 3 ]

0 голосов
/ 10 июня 2018

Ну, я использовал:

curl -X POST -H "Content-Type: application/json" -d "{\"firstName\": \"First\", \"lastName\": \"last\", \"email\": \"user@xyz.com\", \"username\": \"user1\", \"password\": \"pass1\"}" 127.0.0.1:3001/users

И это сработало! Привет Россу Кинарду за помощь во временном решении, чтобы этот вопрос теперь указывал оба способа публикации сообщений с использованием CURL в cmd.

0 голосов
/ 10 июня 2018

Я бы позволил партии выполнить экранирование, заменив все " на \"

set "json={"firstName":"First", "lastName":"last", "email":"user@xyz.com", "username":"user1", "password":"pass1"}"
set "json=%json:"=\"%"
echo curl -X POST -H "Content-Type: application/json" -d "%json%" 127.0.0.1:3001/users

Удалите эхо перед скручиванием перед использованием.


  • Если при запуске пакета в PowerShell curl без расширения будет использоваться псевдоним Invoke-Webrequest вместо curl.exe
  • I В Windows 10 версии 1803 включен curl.exe (C: \ Windows \ system32 \ curl.exe V7.55.1.0)
  • Если вам нужна специальная версия curl, местоположение C:\Windows\system32\, вероятно, находится ранее в пути к среде, поэтому включите путь к your curl.
0 голосов
/ 10 июня 2018

У меня раньше была похожая проблема, и я решил сохранить данные поста в файле .json и вызвать их в запросе.

curl -v -X POST https://someSite.com/randrand \
  -H 'Content-Type: application/json' \
  -H 'User-Agent: (iPhone; iOS 7.1; Scale/2.00)' \
  --data @data.json
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...