Что такое HTTP-клиент?

HTTP-клиент отправляет запросы веб-серверу или API и показывает полученный ответ. Разработчики используют его, чтобы проверить endpoint до написания кода для работы с ним, убедиться, что API возвращает правильный статус и данные, воспроизвести bug или посмотреть, какие заголовки отправляет сервер. Настольные приложения, такие как Postman, Insomnia и Yaak, а также инструмент командной строки curl — наиболее известные примеры.

Описание инструмента

Этот инструмент — лёгкий HTTP-клиент, работающий в браузере и не требующий установки. Выберите метод, введите URL, добавьте параметры запроса, заголовки, тело и учётные данные, затем нажмите «Отправить». В ответе отображаются код статуса, время, размер, заголовки и тело; JSON форматируется для удобного чтения. Вы также можете вставить команду curl, чтобы заполнить весь запрос, или скопировать любой запрос в виде команды curl.

Возможности

  • Запросы GET, POST, PUT, PATCH, DELETE, HEAD и OPTIONS
  • Параметры запроса синхронизированы с URL, поэтому редактировать можно любой из них
  • Пользовательские заголовки с предупреждением о тех, которые браузеры не отправляют
  • Тела формы в форматах JSON, XML, обычного текста и URL-кодирования; Content-Type устанавливается автоматически
  • Аутентификация с Bearer token и базовая аутентификация
  • Статус, время, размер, заголовки и тело ответа; JSON форматируется для удобного чтения
  • Ответы с изображениями отображаются в режиме предварительного просмотра, а любой ответ можно скачать как файл
  • Импорт запроса вставкой команды curl, включая пункт «Копировать как cURL» из инструментов разработчика браузера
  • Экспорт текущего запроса в виде команды curl

Как это работает

Инструмент отправляет ваш запрос с помощью собственного fetch API браузера напрямую с вашего устройства на сервер, поэтому через наши серверы ничего не проходит. Однако действуют правила безопасности браузера. Запрос к другому веб-сайту возвращает читаемый ответ только в том случае, если этот сервер разрешает его через CORS (совместное использование ресурсов между источниками); большинство общедоступных API это разрешают, а многие частные — нет. Браузер также не позволяет веб-странице устанавливать некоторые заголовки, такие как Cookie, Host, Origin и User-Agent, и показывает только те заголовки ответа, которые сервер разрешает раскрывать. Страницы, обслуживаемые через https://, не могут обращаться к адресам http://, за исключением localhost в большинстве браузеров.

Советы

  • Если запрос завершается ошибкой без ответа, откройте консоль разработчика браузера: она укажет причину, которой обычно является отсутствие на сервере заголовка Access-Control-Allow-Origin.
  • Чтобы протестировать собственный API, разрешите origin этого сайта в настройках CORS или выполните тест на localhost.
  • Запрос, которому нужны cookies или IP-адрес, доступный только серверу, лучше отправлять с помощью curl. Скопируйте его на вкладке cURL и выполните в терминале.
  • Нажмите Enter в поле URL, чтобы отправить запрос.
  • Не указывайте схему, и инструмент добавит https:// либо http:// для localhost и 127.0.0.1.
  • Для API-ключа добавьте его как заголовок, например X-Api-Key, на вкладке «Заголовки».