利用telnet模拟http请求

时间:2024-06-12 20:07:38

  最近准备接触php socket编程,所以准备先巩固以前学到的知识, 这里先简单回顾下 利用telnet 来模拟http请求。

  1.先在80端口指向的目录建立http.php 文件

  2.在终端输入 telenet 127.0.0.1 80

     ps: windows doc命令行下:ctrl键 + ']' 键 进入输入模式,接着按回车切换到显式输入模式(可以显示输入的字符)

模拟GET请求 

   #在刚才建立的http.php 文件里打印 get请求参数 print_($_GET);

  #请求方式    请求地址   协议

GET  /test.php?a=1 HTTP/1.0
HOST : 127.0.0.1

输入完成后 2次回车 可以看到打印的get参数  a = 1 ,以及一些头信息。

这里需要注意的是,HTTP/1.1 版本 必须要加上HOST ,  HTTP/1.0 则可不加。

模拟POST请求

#在刚才建立的http.php 文件里打印 post请求参数生成文件 file_put_contetns('post.php',var_export($_POST,true));

   #需要加上 请求的方式和消息体的长度即可。

POST /test.php HTTP/1.0
Host: localhost
Content-type: application/x-www-form-urlencoded
Content-length: 16 name=lemon&age=23

打开post.php 可以看到 name=>lemon , age=2  .因为设置的消息体长度为16。