В чем разница между опциями curl --user и --data? - PullRequest
0 голосов
/ 14 декабря 2018

Итак, для начала я пытался создать bash-скрипт для входа на веб-сайт каждые n дней, чтобы обойти странную геоблокировку.

Но когда я начинаю гуглить и исследую, как войти ввеб-сайт, использующий curl, я вижу два способа сделать это.

curl -u "foo:fooPassword" example.com

или

curl -d "username=foo&password=fooPassword" example.com

ну, в моем случае, только последний работает, но мне интересно, каковыразличия между этими двумя вариантами.
Каковы их предпочтительные варианты использования?
Они оба делают разные вещи для разных видов аутентификации?
Может -d, возможно, с некоторыми другими опциями, заменить --user?или наоборот?
Мне кажется, что эти две вещи могут легко смешаться в моем мозгу, поэтому я хочу увидеть различия между этими двумя вещами

1 Ответ

0 голосов
/ 14 декабря 2018

Опция --user устанавливает заголовок HTTP Authorization , который используется для базовой аутентификации HTTP.

Опция --data устанавливает данные, которые будут отправлены в телеHTTP POST запроса.Многие веб-приложения реализуют свои собственные механизмы аутентификации, используя этот метод, а не полагаясь на базовую аутентификацию HTTP, потому что это позволяет им намного более контролировать степень процесса (например, истечение срока действия учетных данных, возможность выхода из системы и т. Д.).Опция --data может использоваться для отправки любых произвольных данных на удаленный сервер;он не ограничивается простой отправкой имен пользователей и паролей.

Какой из этих двух механизмов необходим, полностью зависит от конкретной веб-службы, с которой вы взаимодействуете.

...