Как проверить постоянное соединение на HTTP-сервере? - PullRequest
6 голосов
/ 17 октября 2008

При создании небольшого экспериментального HTTP-сервера мне нужно реализовать функцию постоянного соединения HTTP 1.1 (и функцию конвейерной передачи). Как мне это проверить? Использование браузера, такого как Firefox, дает мне мало или совсем не контролирует, и это трудно проверить. Есть идеи?

Спасибо

Ответы [ 3 ]

1 голос
/ 17 октября 2008

ab или ApacheBench - это тест командной строки для HTTP-серверов. Опция -k позволяет использовать KeepAlive.

1 голос
/ 17 октября 2008

curl (http://curl.haxx.se/) - дает вам очень хороший контроль над GET / POST и многими другими атрибутами.

curl также поставляется с libcurl, чтобы вы могли делать вещи программно.

Perl и python (urllib или urllib2) помогут вам туда добраться.

0 голосов
/ 18 октября 2008

Netcat. Вы можете ввести запрос (ы) и увидеть ответ (ы) с сервера. Если вы знаете протокол HTTP, это совсем не проблема. На самом деле, это лучше, чем curl или другие высокоуровневые библиотеки / приложения, поскольку здесь вы можете отправлять все, что вам нравится (некорректные запросы), и проверять ключевые случаи в поведении вашего сервера. Вы также можете перенаправить ввод (и вывод), что особенно полезно, когда вы хотите проверить конвейерную обработку запросов HTTP / 1.1. Имейте в виду, что отправка CRLF в Unix с использованием Netcat сложнее, чем в Windows, где вы можете просто нажать Enter.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...