HTTPie (произносится как aitch-tee-tee-pie) – это cURL-подобный, современный, удобный и кроссплатформенный HTTP-клиент командной строки, написанный на Python.
Он разработан, чтобы сделать взаимодействие CLI с веб-сервисами простым и максимально удобным для пользователя.
Он имеет простую команду http, которая позволяет пользователям отправлять произвольные HTTP-запросы с использованием простого и естественного синтаксиса.
Он используется в основном для тестирования, бесперебойной отладки и главным образом для взаимодействия с HTTP-серверами, веб-сервисами и API-интерфейсами RESTful.
- HTTPie поставляется с интуитивно понятным интерфейсом и поддерживает JSON.
- Выразительный и интуитивно понятный командный синтаксис.
- Подсветка синтаксиса, форматированный и раскрашенный вывод терминала.
- HTTPS, прокси и поддержка аутентификации.
- Поддержка форм и загрузки файлов.
- Поддержка произвольных данных запроса и заголовков.
- Wget-подобные загрузки и расширения.
- Поддерживает python 2.7 и 3.x.
В этой статье мы покажем, как установить и использовать httpie с некоторыми основными примерами в Linux.
Как установить и использовать HTTPie в Linux
Большинство дистрибутивов Linux предоставляют пакет HTTPie, который можно легко установить с помощью менеджера системных пакетов по умолчанию, например:
# apt-get install httpie [На Debian/Ubuntu] # dnf install httpie [На Fedora] # yum install httpie [На CentOS/RHEL] # pacman -S httpie [На Arch Linux]
После установки синтаксис для использования httpie:
$ http [options] [METHOD] URL [ITEM [ITEM]]
Основное использование httpie – предоставить URL в качестве аргумента:
$ http example.com
Теперь давайте рассмотрим некоторые основные примеры использования команды httpie с примерами.
Отправить метод HTTP
Вы можете отправить метод HTTP в запросе, например, мы отправим метод GET, который используется для запроса данных от указанного ресурса.
Протокол HTTP — коды состояния — формат запроса и ответа — методы HTTP на пальцах
Обратите внимание, что имя метода HTTP идет прямо перед аргументом URL.
$ http GET itsecforu.ru
Загрузить файл
В этом примере показано, как загрузить файл в файл Transfer.sh с помощью перенаправления ввода.
$ http https://transfer.sh < file.txt
Скачать файл
Вы можете скачать файл, как показано ниже:
$ http https://transfer.sh/Vq3Kg/file.txt > file.txt или $ http --download https://transfer.sh/Vq3Kg/file.txt
Отправить форму
Вы также можете отправить данные в форму, как показано далее:
Отправить форму
Вы также можете отправить данные в форму, как показано далее:
$ http --form POST tecmint.lan date='Hello World'
Посмотреть детали запроса
Чтобы увидеть отправляемый запрос, используйте опцию -v, например.
$ http -v --form POST tecmint.lan date='Hello World'
Базовая аутентификация HTTP
HTTPie также поддерживает базовую аутентификацию HTTP из CLI в форме:
$ http -a username:password https://itsecforu.ru/admin/
Пользовательские заголовки HTTP
Вы также можете определить собственные HTTP-заголовки, используя нотацию Header: Value.
Мы можем проверить это, используя следующий URL, который возвращает заголовки.
Здесь мы определили собственный User-Agent под названием «strong> TEST 1.0»:
$ http GET https://httpbin.org/headers User-Agent:'TEST 1.0'
Смотрите полный список вариантов использования, запустив команды:
$ http --help или $ man ttp
Больше примеров использования вы можете найти в репозитории HTTPie Github: https://github.com/jakubroztocil/httpie.
HTTPie представляет собой cURL-подобный, современный, удобный для пользователя HTTP-клиент командной строки с простым и естественным синтаксисом и отображает цветной вывод.
В этой статье мы показали, как установить и использовать httpie в Linux.
Если у вас есть какие-либо вопросы, свяжитесь с нами через форму комментариев ниже.