一、请求的格式:
(一)、请求行
(1)、请求方法
1.GET
2.POST
3.PUT
4.DELETE
5.TRACE
6.OPTIONS
(2)、请求路径
(3)、所用的协议
(二)、请求头信息
(三)、请求主体信息(可以没有)
(四)、头信息结束后和主体信息之间要空一行
二、发送示例
问:浏览器能发送HTTP协议,HTTP协议一定要浏览器来发送吗?
答:不是,HTTP既然是一种协议,name只要满足http协议,什么工具都可以发。
例子:利用cmd命令窗口发送
第一步:找到自己所在电脑的ip地址。
第二步:telnet连接
按ctrl+]键 回显功能
按回车键
三、请求格式
GET:请求方法method
/http/test.php:请求的资源
HTTP/1.1:请求所用的协议版本(1.0,0.9基本没人用)
Host:localhost:请求头部信息
头信息之后要有空行,因为头信息和主题信息(如果有),需要这个空行作区分
即使没有主体信息,空行也不能少。
另:头信息是非常丰富的,虽然我们图中只写了一个
响应行:协议版本 状态码 状态文字
相应头信息:
Key:value
Key:value
Contente-length:接下来主题的长度
hello
返回状态:
注意:所用的协议目前一般是HTTP/1.1,0.9,1.0已经基本不用。
四、用telnet进行POST提交
1.新建post.php页面
- <?php
- $str=implode($_POST,"\n");
- file_put_contents('./post.txt');
- echo 'write ok';
- ?>
2.发送http请求
主题信息
头信息里要标明主题的长度
POST比GET多了主体信息
但是服务器没有接到信息,因为POST时要告诉服务器
Content-type:application/x-www-form-urlencoded