Правильно создавать вызовы CURL, используя цикл в bash-скрипте - PullRequest
0 голосов
/ 16 ноября 2018

Мне нужно вызывать API, где я каждый раз увеличиваю ID пользователя, у меня есть следующее в bash-скрипте, но я получаю ошибку Unexpected token ' in JSON at position 2. Что я делаю не так?

for ((i=1;i<=5;i++)); do
    curl -X POST --header 'Content-Type: application/json' -d "{ 'id': 'person'$i, 'name': 
    'person', 'info': {} }" 'http://localhost:9999/add'

Ответы [ 2 ]

0 голосов
/ 17 ноября 2018

Это вопрос цитирования.Для JSON стандартно иметь двойные кавычки, попробуйте это

for ((i=1;i<=5;i++)); do
  echo "Adding person"$i
  curl -X POST --header 'Content-Type: application/json' --header 
  'Accept: application/json' --user 'admin' -d '{ "id": "person'$i'", "name": 
  "person", "info": {} }" 'http://localhost:9999/add'
done
0 голосов
/ 16 ноября 2018

Вы можете использовать jq , чтобы редактировать json с помощью шеллскрипта. Смотрите эту ссылку .

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