Usando telnet no Windows para testar HTTP

Usando telnet no Windows para testar HTTP

Estou aprendendo http e tentando usar o telnet para enviar minhas próprias solicitações http.

No prompt de comando, digitei:

telnet google.com 80

Resultado: A tela é limpa e vejo um cursor piscando. 1. Por que não vejo nenhuma indicação de que estou conectado?

Agora, tentando digitar um comando http (get index.html...), vejo o cursor se movendo para a direita enquanto digito, mas não vejo as letras aparecendo na tela. Apenas espaços em branco. 2. Por que isso acontece?

(Usando windows7 de 64 bits)

Responder1

HTTP não é baseado no protocolo telnet. Na verdade, há algumas coisas erradas em usar o telnet como base para "testar" um servidor HTTP. Primeiro, o telnet envia alguns bytes extras imediatamente após estabelecer uma conexão TCP para configurar os parâmetros da sessão. Segundo, o HTTP não faz eco dos dados enviados pelo ponto remoto. Terceiro, bons dispositivos IPS podem interromper conexões com a porta HTTP quando os dados da sessão inicial são enviados ou quando são encontradas violações de protocolo.

Usar o cliente telnet para testar um servidor HTTP é, na melhor das hipóteses, um hack. O cliente exibirá uma tela em branco quando a sessão TCP for estabelecida e exibirá apenas o que o servidor enviar de volta. Se você for inteligente, poderá recuperar uma página em muitos servidores... mas eu consideraria isso uma má prática. Leia sobre o protocolo HTTP sobre como formatar uma GETsolicitação.

Uma solicitação http básica é feita da seguinte maneira:

OBTER/HTTP/1.0
 

Observe a linha extra após a solicitação. Uma solicitação completa termina com uma nova linha em branco.

Responder2

Por que não vejo nenhuma indicação de que estou conectado?

Por que o servidor enviaria dados extras desnecessários e usaria mais largura de banda? No entanto, você está conectado e pode testar isso.

Tente entrar HTTP/1.0e pressione [enter]. Você deve obter uma resposta.
(Um que contém um erro, mas geralmente é suficiente para testar se o servidor web está instalado e funcionando.)

Vejo o cursor se movendo para a direita enquanto digito, mas não vejo as letras aparecendo na tela. Apenas espaços em branco.

Isto é devido ao Windows Telnet. Possui eco local desabilitado por padrão.

informação relacionada