Тупой вопрос: есть ли пакетный режим утилита (например, определенные параметры для curl или wget), которая может позволить мне выдавать необработанные HTTP-команды и либо выводить необработанные результаты, либо перенаправлять / перенаправлять их, как я считаю нужным?
Я знаю, что telnet теоретически работает, но я использую Windows XP, и Microsoft telnet и PuTTY кажутся интерактивными и, похоже, все портят.
редактировать: (пояснение) Я использовал curl раньше, поэтому я знаком с этой идеей, а также с тем, как отправлять параметры через GET / POST, только не о том, как явно контролировать заголовки и как сохранить заголовки в выводе ... Я вижу два возможных метода, которые были бы мне полезны:
Необработанный ввод-вывод HTTP - Я имел в виду буквально как telnet, но в пакетном режиме (не открывать новое окно и не менять настройки терминала):
GET http://someserver/someresource/blah.html
HTTP/1.1 301 Moved Permanently
Date: Wed, 14 Oct 2009 21:23:40 GMT
...
"легкий" ввод, необработанный вывод HTTP - используя curl в обычных методах, но имея возможность видеть необработанный вывод дословно:
> curl --some-option --another-option http://someserver/someresource/blah.html
HTTP/1.1 301 Moved Permanently
Date: Wed, 14 Oct 2009 21:23:40 GMT
...
Curl или wget - хорошие варианты. Но если вы действительно хотите иметь что-то эквивалентное telnet, вам, вероятно, следует использовать netcat (win32) вместо использования telnet. Netcat разработан для необработанного ввода-вывода telnet.
Да, и curl, и wget могут это сделать. Пожалуйста, дайте нам более подробную информацию о том, какие команды вы хотите выполнить.
Случайный пример:
wget --post-data="Some random data sent via POST" "http://example.com/cgi/something.php?arg=1&foo=bar" -q -O results.txt
Отправляет некоторые данные через POST, а также некоторые аргументы через GET на определенный URL. -q означает не сообщать мне о ходе выполнения, -O указывает, в какой файл выводить. Использовать -O -
если вы хотите передать результаты по конвейеру вместо сохранения в файл.
HTTP-клиент для Mac OS X удобен, http://ditchnet.org/httpclient/
Для "легкого" ввода, необработанный вывод HTTP: curl -i --raw http://google.fr
С другой стороны, я думаю, что Telnet - ваш лучший шанс.