7

Я исследую различия в поведении между несколькими веб-серверами. Мне нужно увидеть необработанные данные ответа от серверов (то есть до того, как ответ будет де-чанкирован, если он имеет «Transfer-Encoding:chunked», и до того, как он будет распакован, если у него будет «Content-Encoding:gzip»).

Я могу найти множество простых HTTP-клиентов, которые почти делают то, что мне нужно (например, Poster, RESTClient), но они имеют тенденцию декодировать ответ на один шаг слишком далеко.

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

Кто-нибудь может порекомендовать хороший, легкий инструмент для отправки / просмотра необработанных данных, которые составляют сообщения HTTP?

Изменить: я должен добавить, что я нахожусь на Windows. Также инструмент должен работать как с удаленными, так и с локальными серверами.

6 ответов6

4

я голосую за локон

$ curl -I http://www.amazon.com
HTTP/1.1 405 MethodNotAllowed
Date: Tue, 16 Mar 2010 01:21:45 GMT
Server: Server
Set-Cookie: skin=noskin; path=/; domain=.amazon.com; expires=Tue, 16-Mar-2010 01:21:45 GMT
x-amz-id-1: 02Q7DN8FGW708892524E
allow: POST, GET
x-amz-id-2: POduQxVVwgUXSZRQEM5nWw+9DDvV22s7
Vary: Accept-Encoding,User-Agent
Content-Type: text/html; charset=ISO-8859-1
4

Fiddler - это «прокси-сервер отладки HTTP». Это позволяет вам проверять HTTP-сообщения, а также создавать новые HTTP-сообщения. Каждое сообщение можно просматривать несколькими способами, например, в виде необработанного текста, и в шестнадцатеричном редакторе. Возможным недостатком является то, что для этого требуется .NET Framework.

3

Tamper Data - отличный плагин для Firefox, который показывает все HTTP-запросы, которые делает браузер. Он показывает заголовки, контент и все, что вы хотели бы знать. Если у вас есть Firefox, нажмите на него.

альтернативный текст

1

Tcpdump - это простой текстовый интерфейс для сетевого анализатора. Вы можете запустить его с простыми правилами фильтрации, чтобы разрешить запись или отображение интересующего вас соединения. Он также мультиплатформенный, доступен для MS Windows (альтернативная версия) и большинства платформ Unix. Вы также можете сохранить журнал пакетов с помощью tcpdump, а затем декодировать с помощью wireshark.

Пример использования:

tcpdump dst port 80
1

Как насчет NirSoft SmartSniff?

SmartSniff - это утилита для мониторинга сети, которая позволяет вам захватывать пакеты TCP/IP, которые проходят через ваш сетевой адаптер, и просматривать полученные данные как последовательность разговоров между клиентами и серверами. Вы можете просматривать разговоры по TCP/IP в режиме Ascii (для текстовых протоколов, таких как HTTP, SMTP, POP3 и FTP.) Или в виде шестнадцатеричного дампа. (для нетекстовых базовых протоколов, таких как DNS)

альтернативный текст

SmartSniff является бесплатным. Zip-файл, содержащий инструмент и документацию, составляет всего 65 КБ.

1

Я только что видел ваш вопрос, я думаю, вы можете сделать это с помощью генератора рабочей нагрузки, такого как httperf. Это инструмент на основе Linux, который можно использовать в Windows с помощью Cygwin. Вы можете изменить его код, чтобы увидеть полное сообщение, насколько я знаю, он отображает текст ответа при использовании команды --print-reply body и заголовок при использовании --print-reply header. Надеюсь, это работает вы

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .