В рамках проекта HTTPie развивается упрощённый аналог утилиты curl

В рамках проекта HTTPie предпринята попытка создания упрощённого аналога утилиты curl, ориентированного на отправку запросов с использованием API web-сервисов. В отличие от curl, HTTPie изначально ориентирован на использование JSON и поддерживает подсветку синтаксиса, что позволяет увеличить наглядность вывода результатов обращения к различным API. Код утилиты написан на языке Python с использованием модулей Requests и Pygments. Исходные тексты распространяются под лицензией BSD.

Запрос формируется без нагромождения опциями в виде «http метод URL параметры». Поддерживается разбор параметров в формате JSON и автоматическая сериализация в JSON параметров, заданных в виде списка. Если в качестве разделителя параметров используется двоеточие, считается, что это HTTP-заголовок, если символ «=» — строковый параметр запроса, «:=» — числовой параметр.

Например, после выполнения:

   http PATCH api.example.com/person/1 X-API-Token:123 name=John email=john@example.org age:=29

будет выполнен запрос:

   PATCH /person/1 HTTP/1.1
   User-Agent: HTTPie/0.1
   X-API-Token: 123
   Content-Type: application/json; charset=utf-8

   {"name": "John", "email": "john@example.org", "age": 29}

если дополнительно указать опцию «-f» то вместо «application/json» будет использован тип «application/x-www-form-urlencoded» и в итоге получим:

   PATCH /person/1 HTTP/1.1
   User-Agent: HTTPie/0.1
   X-API-Token: 123
   Content-Type: application/x-www-form-urlencoded; charset=utf-8

   age=29name=Johnemail=john%40example.org

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.