HTTPie - современный HTTP-клиент командной строки

Isqus22

Newbie
05.06.2020
2
0
1

HTTPie (произносится как aitch-tee-tee-pie) - это HTTP-клиент командной строки. Его цель - сделать взаимодействие интерфейса командной строки с веб-службами максимально удобным для человека.

Он предоставляет простую команду HTTP, которая позволяет отправлять произвольные HTTP-запросы с использованием простого и естественного синтаксиса и отображает цветной вывод. HTTPie можно использовать для тестирования, отладки и общего взаимодействия с HTTP-серверами.


Функции:
  • Выразительный и интуитивно понятный синтаксис
  • Форматированный и раскрашенный вывод на терминал
  • Встроенная поддержка JSON
  • Формы и загрузка файлов
  • HTTPS, прокси и аутентификация
  • Данные произвольного запроса
  • Пользовательские заголовки
  • Постоянные сеансы
  • Wget-подобные загрузки
  • Поддержка Python 2.6, 2.7 и 3.x
  • Поддержка Linux, Mac OS X и Windows
  • Плагины
  • Документация
  • Покрытие тестов

Установка

  • macOS
В macOS HTTPie можно установить через Homebrew (рекомендуется):
$ brew install httpie
Также доступен порт MacPorts:
$ port install httpie

  • Linux
Большинство дистрибутивов Linux предоставляют пакет, который можно установить с помощью системного диспетчера пакетов, например:


Код:
# Debian, Ubuntu, etc.
$ apt-get install httpie

# Fedora
$ dnf install httpie

# CentOS, RHEL, ...
$ yum install httpie

# Arch Linux
$ pacman -S httpie

  • Windows, etc.
Универсальный метод установки (который работает в Windows, Mac OS X, Linux,… и всегда предоставляет самую последнюю версию) - использовать pip:
Код:
# Make sure we have an up-to-date version of pip and setuptools:
$ pip install --upgrade pip setuptools

$ pip install --upgrade httpie
(If pip installation fails for some reason, you can try easy_install httpie as a fallback.)

Usage:

$ http [flags] [METHOD] URL [ITEM [ITEM]]




Примеры:
  • Пользовательский метод HTTP, заголовки HTTP и данные JSON:
$ http PUT example.org X-API-Token:123 name=John

  • Submitting forms:
$ http -f POST example.org hello=World

  • See the request that is being sent using one of the output options:
$ http -v example.org

  • Use Github API to post a comment on an issue with authentication:
$ http -a USERNAME POST https://api.github.com/repos/jakubroztocil/httpie/issues/
83/comments body='HTTPie is awesome! :heart:'


  • Upload a file using redirected input:
$ http example.org < file.json

  • Download a file and save it via redirected output:
$ http example.org/file > file

  • Download a file wget style:
$ http --download example.org/file

  • Use named sessions to make certain aspects or the communication persistent between requests to the same host:
$ http --session=logged-in -a username:password httpbin.org/get API-Key:123

$ http --session=logged-in httpbin.org/headers

  • Set a custom Host header to work around missing DNS records:
$ http localhost:8000 Host:example.com

DOWNLOAD HTTPIE
 

Об LS-LA

  • Мы, группа единомышленников, основная цель которых повышать уровень знаний и умений.
    Не забывая о материальном благополучии каждого)

About LS-LA

  • We, a group of like-minded people, whose main goal is to increase the level of knowledge and skills.
    Not forgetting about everyone’s material well-being)

Быстрая навигация

Пользовательское меню