it-swarm.xyz

HTTP-сервер для Mac, похожий на Fiddler в Windows

В предыдущих работах, когда я работал на компьютере с Windows, я использовал Fiddler для просмотра транзакций HTTP и отладки.

Я специально отслеживаю транзакции HTTP для сайта ajax, над которым я работаю, чтобы убедиться, что сайт делает то, что я ожидаю. Переписывание HTTP (как предусмотрено Fiddler) желательно, но не обязательно.

Кто-нибудь может порекомендовать что-то подобное для использования на Mac?

237
Doug Harris

Я нашел Чарльз Прокси . Это намного ближе к функциональности Fiddler. Это не бесплатно, но это может стоить цену.

69
Doug Harris

Используйте Chrome и перейдите к chrome: // net-internals /

Это позволяет детальный анализ и дампы.

128
brains_at_work

Мое любимое Mac-приложение для мониторинга трафика - HTTPScoop , я подробно описал это, а также использовал tcpdump из командной строки в этот пост, который я опубликовал в прошлом году .

30
Ted Naleid

Я использовал mitmproxy для перехвата HTTP-трафика. Это отличный инструмент, и вы можете использовать его для отладки мобильных устройств, а также любой другой операционной системы.

30
eikes

Не то, что вы спросили, но в Firefox надстройка Live HTTP Headers - это все, что мне нужно, если я хочу редактировать и повторно воспроизводить запросы, включая изменение URL-адреса и метода HTTP.

 Live HTTP Headers

В Firebug Мониторинг сети показывает все запросы и ответы. Аналогично, в Safari панель Resources встроенного Web Inspector также покрывает большинство моих потребностей. (Включите веб-инспектор через настройки: Показать меню «Разработка» в строке меню .) В Chrome и Firefox есть аналогичные инструменты.

Когда все становится сложнее, я запускаю мой Wireshark пакетный анализатор. Однако, в отличие от Fiddler, Wireshark не позволяет вам изменить данные и не поддерживает такие вещи, как автоответчики, как, очевидно, делает Fiddler.

Для Wireshark см. Протокол передачи гипертекста (HTTP) для некоторой общей информации о захвате HTTP и Захват пакетов HTTP для отладки Apache , для некоторых примеров display filters. (Возможно, вы захотите установить для фильтра capture значение «port 80», чтобы показать все запросы к этому порту и ответы от этого порта. Или ограничить на каком-нибудь сервере используйте capture filter "port 80 and Host www.google.com".)

# Показать только 404: страница не найдена 
 Http.response.code == 404 
 
 # Показать только определенные методы HTTP 
 Http.request.method == " ПОСТ "|| http.request.method == "PUT" 
 
 # Показывать только javascript 
 http.content_type содержит "javascript"

Обратите внимание, что Wireshark может распаковать gzip или сдуть закодированные (сжатые) вещи на лету для вас. Это значительно облегчает чтение, поскольку большинство веб-серверов сжимают данные, которые они отправляют в браузер.

(Что касается автоответчиков: у превосходного JS Bin есть короткое видео о том, как использовать его для отладки запросов Ajax. Если вы не знаете JS Bin, то сначала просмотрите вводное видео.)

19
Arjan

В дополнение к Чарльзу (уже упоминавшемуся), мне также нравится дополнениеHttpFoxдля Mozilla Firefox. Как и Чарльз, вы можете использовать его как на Mac, так и на Windows. Это легче, чем Чарльз, потому что он живет в браузере, что полезно для быстрого поиска неисправностей. Вот некоторая информация со страницы HttpFox:

HttpFox отслеживает и анализирует весь входящий и исходящий HTTP-трафик между браузером и веб-серверами.

Он направлен на то, чтобы предоставить браузеру Firefox функциональность, известную из таких инструментов, как HttpWatch или IEInspector.

Информация, доступная по запросу, включает в себя:

  • Заголовки запросов и ответов
  • Отправленные и полученные куки
  • Параметры строки запроса
  • Параметры POST
  • Тело ответа

И скриншот:

Screenshot of HttpFox add-on for Mozilla Firefox

7
Chris W. Rea

Не прокси, но это помогает в отладке HTTP:

Просто запустите сканирование на интерфейсе, на котором вы собираетесь использовать HTTP-трафик, выполните трафик, а затем остановите сканирование и введите «HTTP» в качестве строки фильтра. После этого вы сможете проверить все пакеты HTTP-разговора. Открыв представление Packet Detail, вы можете открыть раздел HTTP, и он останется открытым между пакетами.

Это отличный инструмент, и вам не нужно менять прокси браузера. С другой стороны, он не может помочь с трафиком HTTPS, поскольку он зашифрован. (Хотя он может расшифровать SSL-соединения, использующие RSA )

6
w00t

Я опоздал, но - я использую Paros Proxy . Это на Java, так что кроссплатформенный. Хотя, если вы предпочитаете, чтобы он был упакован как приложение, есть один здесь внизу.

5
Abhinav Gupta

Не забудьте про Burp Suite. У них есть бесплатная версия. Это кроссплатформенная. http://portswigger.net/burp/

4
smileBot

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

Конечно, он может блокировать все виды контента и преобразовывать ответы до того, как браузер получит их. Но на самом деле он может изменять как запросы, так и ответы . И хотя это не настоящая отладка, она также предлагает логирование. Таким образом, это может удовлетворить основные потребности :

Внутри GlimmerBlocker выполняется 4 типа сценариев, и некоторые объекты определены только для некоторых типов сценариев:

  • глобальный прокси: устанавливает глобальные настройки прокси и может проверять, например, название местоположения, сеть AirPort.
  • запрос на изменение: это может изменить запрошенный URL-адрес, отослать ответ перенаправления в браузер или отправить текст/html обратно в браузер.
  • расширение ключевых слов. [Только для Safari, AvB]
  • transform: изменить ответ, полученный веб-сервером, прежде чем он будет отправлен обратно в Safari [или любой браузер, настроенный на использование прокси-сервера, предоставленного GlimmerBlocker, AvB].

(Можно также использовать его для включения различных скриптов Greasemonkey в полученный ответ, без использования дополнения Greasemonkey, например для блокировки Flash без установки какого-либо дополнения.)

2
Arjan

Вы можете легко настроить Fiddler для Mac с помощью Parallels согласно инструкциям на их сайте.

Единственное предостережение заключается в том, что вам нужно вручную настроить параметры сети, чтобы они указывали на IP-адрес VM, но на самом деле это не так уж важно.

2
aleemb

jMeter также может быть полезным; Он предназначен для тестирования производительности нагрузки на веб-серверах, но он все еще может делать то, что вам нужно. jMeter написан на Java, поэтому вы можете скачать файл .jar, который будет работать на Mac, Windows или Linux.

1
Evie
1
actuosus

Если вы имеете дело с трафиком приложений или сторонними API-интеграциями, которые проходят через общедоступный Интернет, вам следует попробовать Runscope (из которых, полное раскрытие, я являюсь соучредителем). Он фиксирует HTTP-запросы на любой URL, дает вам представление потока Nice для отладки и позволяет легко делиться отдельными запросами с другими.

1
John Sheehan

Вы также можете попробовать APIKitchen . Это поможет вам в отладке и тестировании HTTP API и любых запросов в целом. Он также имеет автономную версию для тестирования во внутренних сетях. Нет необходимости установки.

0
kontinuity