无法从命令行使用 telnet 获取 http 响应 [关闭]

Posted

技术标签:

【中文标题】无法从命令行使用 telnet 获取 http 响应 [关闭]【英文标题】:Can't get the http response using telnet from the command line [closed] 【发布时间】:2013-05-13 05:08:36 【问题描述】:

我使用的是 Windows 7 (x64)。我想从命令行发送一个 http 请求并获得响应。我使用远程登录。我在命令行中输入:telnet www.google.com 80。 在我按下“enter”后,屏幕变黑(一切都从 cmd 屏幕上消失了)。

几分钟后,它会显示标准命令提示符,但不输出任何内容。

当我在命令行中启动 telnet(键入 telnet 不带参数)并键入 o www.google.com 80 时,它会输出 Connecting to www.google.com。几分钟后,它显示press any key。按任意键后输出The connection was lost

我的问题是:我如何才能真正获得 http 响应?做错了什么?

【问题讨论】:

网络服务器会在很短的超时时间内收到GETPOST 请求。对于给定的服务器,您可能无法以足够快的速度打字。 【参考方案1】:

连接已建立,等待您输入命令。键入 GET / HTTP/1.0 并按两次 Enter。该命令区分大小写。它不会在您键入时显示,因为默认情况下 localecho 是关闭的。您可以像这样启用 localecho:

C:\>telnet
Welcome to Microsoft Telnet Client

Escape Character is 'CTRL++'

Microsoft Telnet> set localecho
Local echo on
Microsoft Telnet> open www.example.com 80
Connecting To www.example.com...
GET / HTTP/1.0

或者您可以使用PuTTY,它默认显示键入的文本(不过,您需要将会话配置为在退出时不关闭窗口)。

有关 HTTP 的更多信息,请参阅Wikipedia。协议规范见RFC 2616。

【讨论】:

唯一的问题是当我输入任何字母时,它不会输出它们......但是我按照你说的输入并且它有效(我得到了响应)!你知道输出我输入的符号有什么问题吗?

以上是关于无法从命令行使用 telnet 获取 http 响应 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何从 bash 获取 telnet 命令的输出?

如何使用 telnet 发出请求?

TypeError:无法腌制 CompiledFFI 对象

如何在命令行的 telnet 窗口上读取输入和写入输出?

telnet命令怎么用,需要啥端口?

如何使用telnet测试端口号