🌐 Инструменты прокси для клиента HTTP и веб-отладки |

🌐 Инструменты прокси для клиента HTTP и веб-отладки

Обзоры

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

Что такое отладка?

Отладка – это процесс, и он включает в себя множество тактик.

Это систематический поиск и устранение проблем и ошибок в программе.

Кроме того, отладка устраняет все проблемы, которые могут помешать корректной работе программного обеспечения или, в данном случае, веб-приложения.

Процесс отладки вашего API или веб-приложения в первую очередь включает в себя попытку воспроизвести проблему.

Следовательно, возникает необходимость отправить API-запрос.

Вот здесь-то и возникает проблема.

Большинство браузеров не позволят вам изменить заголовок origin и даже ограничения на размер URL.

Другими словами, чтобы воспроизвести проблему, вам может понадобиться выполнить некоторые манипуляции с HTTP.

👵 Лучшие HTTP-клиенты командной строки для Linux

А для этого потребуются мощные инструменты отладки.

Интересно знать, что некоторые HTTP-клиенты, то есть веб-браузеры, имеют встроенные инструменты веб-разработчика.

Эти инструменты можно использовать для отладки API.

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

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

Тогда вы, возможно, захотите взглянуть на компонент HTTP-клиента.

HTTP, или HyperText Transfer Protocol, – это причина, по которой вы можете общаться или передавать данные в Интернете, каждый раз, когда вы вводите URL.

Это прикладной протокол, который делает возможным просмотр Интернета.

Итак, HTTP-клиент – это система, которая отправляет запросы на сервер в текстовом формате HTTP и, в свою очередь, получает ответ от того же сервера.

Очень важно знать разницу между HTTP-клиентом и HTTP-сервером.

Различия между HTTP-клиентом и сервером

В то время как HTTP-клиентом часто являются веб-браузеры или утилиты, HTTP-серверы выступают в качестве прокси-серверов для серверов приложений.

Проще говоря, ваши смартфоны, телевизоры, PlayStation, да вообще любое устройство, которое может подключаться к Интернету, скорее всего, использует HTTP-клиент.

Аналогично, HTTP-сервер – это сетевой компьютер, к которому подключается HTTP-клиент.

Их отношения больше похожи на разговор.

⚓ cURL – Как отобразить заголовки запроса и заголовки ответа

HTTP-клиент посылает запрос, а HTTP-сервер отвечает.

Примеры HTTP-запросов

Запросы Результаты
GET Запрашивает весь ресурс
HEAD Запрашивает ресурс без тела
POST Добавляет контент на существующий веб-ресурс
PUT Изменяет существующий веб-ресурс
DELETE Удаляет указанный ресурс
TRACE Показывает изменения в веб-ресурсе
OPTIONS Показывает доступные методы HTTP для URL
CONNECT Преобразование соединения запроса в прозрачный туннель TCP/IP
PATCH Частично изменяет веб-ресурс

⚓ Выполнение POST-запроса с помощью Curl [Практические примеры]

HTTPie

Конечная цель HTTPie – сделать взаимодействие CLI с веб-сервисами удобным для пользователя.

Этот инструмент предоставляет HTTP-команду для отправки запросов с использованием естественного синтаксиса.

см. подробнее:

HTTPie – современный HTTP-клиент, похожий на команды Curl и Wget

Fiddler

Fiddler – это кроссплатформенный прокси-сервер для отладки веб-сеансов.

С его помощью можно манипулировать веб-сессиями, проверять трафик HTTPS и отслеживать трафик между вашим компьютером и Интернетом.

Вы можете установить Fiddler на Windows, macOS и Linux. Это, вероятно, самый популярный инструмент для отладки трафика.

см. подробнее:

⛕ Использование Fiddler для захвата трафика VirtualBox

RESTer

RESTer доступен в качестве расширения для Google Chrome и Firefox.

Основные моменты

  • Заголовки авторизации с аутентификацией Basic или Auth2
  • Просмотр истории запросов
  • Выполнение запросов с любым методом, URL, телом и пользовательскими заголовками
  • Тестирование и отладка API

Paw

Paw – это полнофункциональный HTTP-клиент, который позволяет отправлять все виды HTTP-запросов.

С помощью Paw вы можете тестировать свои API, а также изучать новые.

Paw создан исключительно для macOS и обладает простыми в использовании функциями.

Вы можете импортировать и генерировать swagger, RAML и т.д., и он поддерживает схему JSON.

Основные моменты

  • Поддерживает множество аутентификаций, таких как basic, OAuth, hawk, digest
  • Динамические значения
  • Среды
  • Расширения на основе java-script
  • Куки и манипуляции с сессиями

Requester

Requester – это надежный клиент, сочетающий в себе возможности HTTPie, Postman и Paw.

Он работает только с редактором Sublime Text.

Основные моменты

  • Поддерживает JSON
  • Коллекции и история запросов
  • Цветной вывод с подсветкой синтаксиса
  • Современный пользовательский интерфейс
  • Cookies, пользовательские заголовки, тело запроса и параметры запроса легко настраиваются.
  • Поддержка GraphQL

Postman

Постоянно работаете с API?

Вы влюбитесь в Postman.

Postman – бесспорно, один из самых популярных HTTP-клиентов, используемых для отладки веб-приложений.

Он позволяет быстрее и проще разрабатывать API.

Основные моменты

  • Мощный GUI с удобным интерфейсом
  • История запросов
  • Автоматизированное тестирование с помощью бегущей строки коллекции
  • Гибкий мониторинг API
  • Поддержка REST, GraphQL, SOAP
  • Поддержка нескольких полезных нагрузок, включая JSON и HTML

💉 Astra – автоматизированное тестирование безопасности для REST API

cURL

cURL – это инструмент командной строки, который используется для отправки данных с помощью синтаксиса URL.

Хорошо, что cURL по умолчанию установлен на большинстве операционных систем с поддержкой UNIX.

Он поддерживает множество протоколов, включая FTP, LDAP, POP3, SMTP, GOPHER, IMAP, HTTP, HTTPS и SCP.

см. также:

Charles Proxy

Как видно из названия, Charles proxy – это HTTP и обратный прокси.

Он работает путем маршрутизации локального трафика через него.

Вы можете использовать Charles для SSL-проксирования, дросселирования полосы пропускания, отладки AJAX, точек останова и многого другого.

Whistle

Whistle – это кроссплатформенный инструмент отладки на базе NodeJS для захвата и манипулирования HTTP, HTTPS, WebSocket и TCP трафиком.

Сначала необходимо установить NodeJS, а затем Whistle с помощью npm.

npm install -g whistle

Вы всегда можете расширить возможности плагина, если стандартные функции не соответствуют вашим требованиям.

mitmproxy

mitmproxy – это популярный HTTPS-прокси с открытым исходным кодом среди исследователей безопасности.

Используйте его как CLI, веб или Python API.

🕵️ Обзор инструментов MITM атак для исследователей безопасности

Proxyman

Как и вышеупомянутый Paw, Proxyman – это премиум-приложение для отладки веб-прокси на macOS.

Он действует как “человек посередине” для веб-трафика и предлагает множество функций, включая следующие.

  • SSL-прокси
  • Повторять запросы
  • Protobuf
  • Сценарии ReWrite
  • Локальная и удаленная карта
  • Фильтрация содержимого
  • Подсветка синтаксиса

HTTP Toolkit

HTTP Toolkit – это отладчик HTTP с открытым исходным кодом.

Это настольное приложение, доступное для Windows, Mac и Linux.

В отличие от других отладчиков HTTP, HTTP Toolkit обеспечивает автоматический целевой перехват для определенных клиентов, включая настройку HTTPS, а не перехватывает все данные со всего компьютера, что позволяет избежать перехвата нерелевантного трафика или нарушения работы других приложений.

Заключение

Перечисленные выше HTTP-клиенты и прокси для веб-отладки могут помочь вам во многих отношениях.

Большинство из них бесплатны или предлагают пробную версию, поэтому попробуйте некоторые из них, чтобы увидеть, что подходит именно вам.

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий