【问题标题】:How to send a Request to HTTP server in multiline form through command line?如何通过命令行以多行形式向 HTTP 服务器发送请求?
【发布时间】:2013-07-10 23:36:54
【问题描述】:

我想通过命令行(Telnet 客户端)向 HTML 页面发送请求,但我做不到。

我写:

GET / HTTP/1.1

然后当我想移动到下一行以写入主机名并按“enter”键时,它不会这样做,它只是执行该命令并显示:“Invailed command”。我尝试设置 localecho 和 crlf,但没有成功。

有人可以帮帮我吗?

【问题讨论】:

  • 为了清楚起见,我想写成它的实际形式:GET /index.cfm?test=1 HTTP/1.1 host: www.myserver.com

标签: http command-line request command telnet


【解决方案1】:

我会说你刚刚开始 telnet 没有任何额外的命令行选项。 您必须使用您请求的服务器名称和端口号来启动它:

$ telnet some.page.com 80

然后它应该可以工作了。

你也可以在telnet中指定服务器和端口:

telnet> open google.com 80

【讨论】:

  • 好吧,我做到了,但我想手动运行请求。我该怎么做?
  • 手动是指它的外观和结构:
  • 对不起,我真的不明白你所说的“手动”是什么意思。我写的所有内容都是“手动”完成的。你能改写一下这个问题吗?
  • 手动我的意思是完全发送请求,就像它真正发送到浏览器的方式一样,包括方法、页面名称、服务器版本和主机。例如:GET / HTTP/1.1 主机:www.google.com
  • 我很困惑.. 究竟是什么阻止了你这样做?为了让自己清楚 - 我的意思是:1)运行telnet,2)写open google.com 80,3)写你的请求:GET / HTTP/1.1<Enter>Host: www.google.com<Enter><Enter> - 完成。这行得通吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-08-22
  • 2018-01-15
  • 2016-01-23
  • 1970-01-01
  • 1970-01-01
  • 2013-01-07
  • 2016-01-16
相关资源
最近更新 更多