Используйте Chrome и перейдите к chrome: // net-internals /
Это позволяет детальный анализ и дампы.
В предыдущих работах, когда я работал на компьютере с Windows, я использовал Fiddler для просмотра HTTP-транзакций и отладки.
Я специально отслеживаю транзакции HTTP для сайта ajax, над которым я работаю, чтобы убедиться, что сайт делает то, что я ожидаю. Переписать HTTP (как предусмотрено Fiddler) приятно, но не обязательно.
Кто-нибудь может порекомендовать что-то подобное для использования на Mac?
Используйте Chrome и перейдите к chrome: // net-internals /
Это позволяет детальный анализ и дампы.
Я нашел Чарльза Прокси . Это намного ближе к функциональности Fiddler. Это не бесплатно, но это может стоить цену.
Мое любимое Mac-приложение для мониторинга трафика - HTTPScoop, я подробно описал это, а также использовал tcpdump из командной строки в этом посте, который я опубликовал в прошлом году .
Я использовал mitmproxy для перехвата HTTP-трафика. Это отличный инструмент, и вы можете использовать его для отладки мобильных устройств, а также любой другой операционной системы.
Не то, что вы спросили, но в Firefox надстройка Live HTTP Headers - это все, что мне нужно, если я хочу редактировать и повторно воспроизводить запросы, включая изменение URL-адреса и метода HTTP.
В Firebug Сетевой мониторинг показывает все запросы и ответы. Аналогично, в Safari панель «Ресурсы» встроенного веб-инспектора также покрывает большинство моих потребностей. (Включите веб-инспектор через настройки: Показать меню «Разработка» в строке меню .) В Chrome и Firefox есть аналогичные инструменты.
Когда все становится сложнее, я запускаю мой анализатор пакетов Wireshark . Однако, в отличие от Fiddler, Wireshark не позволяет вам изменять данные и не поддерживает такие функции, как автоответчики, как, очевидно, делает Fiddler.
Для Wireshark см. Протокол передачи гипертекста (HTTP) для получения некоторой общей информации о захвате HTTP и Захват пакетов HTTP для отладки Apache, для некоторых примеров фильтров отображения . (Возможно, вы захотите установить фильтр захвата на « port 80
», чтобы показать все запросы к этому порту и ответы от этого порта. Или, чтобы ограничиться каким-либо сервером, используйте фильтр захвата « port 80 and host www.google.com
».) Например:
# Показать только 404: страница не найдена http.response.code == 404 # Показывать только определенные методы HTTP http.request.method == "POST" || http.request.method == "PUT" # Показывать только JavaScript http.content_type содержит «javascript»
Обратите внимание, что Wireshark может распаковать gzip или дефлировать закодированные (сжатые) вещи на лету для вас. Это значительно облегчает чтение, поскольку большинство веб-серверов сжимают данные, которые они отправляют в браузер.
(Что касается автоответчиков: у превосходного JS Bin есть короткое видео о том, как использовать его для отладки Ajax-запросов. Если вы не знаете JS Bin, то сначала просмотрите вводное видео.)
В дополнение к Чарльзу (уже упомянутому), мне также нравится дополнение HttpFox для Mozilla Firefox. Как и Чарльз, вы можете использовать его как на Mac, так и на Windows. Это легче, чем Чарльз, потому что он живет в браузере, что полезно для быстрого устранения неполадок. Вот некоторая информация со страницы HttpFox:
HttpFox отслеживает и анализирует весь входящий и исходящий HTTP-трафик между браузером и веб-серверами.
Он направлен на то, чтобы перенести в браузер Firefox функциональность, известную из таких инструментов, как HttpWatch или IEInspector.
Информация, доступная по запросу, включает в себя:
- Заголовки запросов и ответов
- Отправленные и полученные куки
- Параметры строки запроса
- Параметры POST
- Тело ответа
И скриншот:
Не прокси, но это помогает в отладке HTTP:
Просто запустите сканирование на интерфейсе, для которого вы собираетесь использовать HTTP-трафик, выполните трафик, а затем остановите сканирование и введите «HTTP» в качестве строки фильтра. После этого вы сможете проверить все пакеты HTTP-разговора. Открыв представление Packet Detail, вы можете открыть раздел HTTP, и он останется открытым между пакетами.
Это отличный инструмент, и вам не нужно менять прокси браузера. С другой стороны, он не может помочь с трафиком HTTPS, поскольку он зашифрован. (Хотя он может расшифровать соединения SSL, которые используют RSA )
Я опоздал, но - я использую Paros Proxy . Это на Java, так что кроссплатформенный. Хотя, если вы предпочитаете, чтобы оно было упаковано как приложение, здесь внизу есть одно .
Не забудьте про Burp Suite. У них есть бесплатная версия. Это кроссплатформенная. http://portswigger.net/burp/
Кажется, что бесплатный GlimmerBlocker может сделать часть уловки.
Конечно, он может блокировать все виды контента и преобразовывать ответы до того, как браузер получит их. Но на самом деле это может изменить как запросы, так и ответы . И хотя это не настоящая отладка, она также предлагает логирование. Таким образом, это может удовлетворить основные потребности :
Внутри GlimmerBlocker выполняется 4 типа сценариев, а некоторые объекты определены только для некоторых типов сценариев:
- глобальный прокси: устанавливает глобальные настройки прокси и может проверять, например, имя местоположения, сеть AirPort.
- Запрос на изменение: это может изменить запрошенный URL, отправить ответ перенаправления в браузер или отправить текст / html обратно в браузер.
- расширение ключевых слов. [Только для сафари, AvB]
- transform: изменить ответ, полученный веб-сервером, прежде чем он будет отправлен обратно в Safari [или любой браузер, настроенный на использование прокси-сервера, предоставленного GlimmerBlocker, AvB].
(Можно также использовать его для включения различных скриптов Greasemonkey в полученный ответ, без использования дополнения Greasemonkey, например, для блокировки Flash без установки какого-либо дополнения.)