cURL запросить пароль (Bash) - PullRequest
0 голосов
/ 28 мая 2020

У меня есть этот сценарий в Bash:

curl -X PUT   "http://someurl/restapi/security-policies/action-policies/" -H  "accept: application/json" -u "some token" -H  "Content-Type: application/json" -d '{"response-page": "page"}'

сценарий предназначен для запуска API с использованием cURL с аутентификацией токена. Теперь проблема в том, что когда я запускаю этот скрипт, API запрашивает у меня пароль и приостанавливает выполнение остальной части скрипта. Есть ли способ отправить пароль к этому API?

Спасибо.

1 Ответ

0 голосов
/ 28 мая 2020

Кажется немного странным, что cURL запрашивает пароль (как интерактивная оболочка?), Даже заметил, что вы уже отправили какой-то токен.

Если это действительно выглядит как интерактивная оболочка, тогда вы можете заключить этот запрос в expect ,, например

expect -c "spawn curl...; expect \"assword\"; send \"Password\r\n\"; interact"

Но вы можете заметить, что параметр -u в curl имеет значение <user:password>, затем вы можете добавить пароль с этим токеном, разделенный :.

Обновление : После прочтения документа этого REST API, я думаю, попробуйте использовать -H "Authorization: some token" вместо -u "some token"?

Обновление : запрашивается ли пароль «Введите пароль хоста для пользователя 'some token':»? (Я пробовал на WSL) Если да, то добавьте после токена :.

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