一、组成
起始行+首部块+主体(可选)
1.请求报文格式:
<method> <request-URL> <version>
<headers>
<body>
2.响应报文
<version> <status> <reason-phrase>
<headers>
<body>
(1)method方法,客户端希望服务器对资源的操作
(2)request-URL请求URL,为资源的url地址
(3)version版本, 报文所使用的HTTP版本
(4)status状态码,描述请求过程中发生的情况
(5)reason-phrase原因短语,对状态码的说明
(6)header首部,对请求资源的详细说明,名:值
(7)body数据块
二、方法
GET:从服务器端获取资源
HEAD:只从服务器中获取文档的首部,对首部检查,如判断对象是否存在等信息
POST:向服务器发送需要处理的数据,支持HTML表单
PUT:将请求的主体部分存储在服务器上,如果请求行url已存在,则替换相应页面
TRACE:对可能经过代理服务器传送到服务器上去的报文进行追踪,会在目的服务器端发起一个“环回“诊断,到达最后服务器会弹回一条TRACE响应,并在响应的主体中携带它收到的原始请求报文,客户端可以查看在所有中间HTTP的原始报文是否存在或修改。
OPTIONS:决定可以在服务器 上执行哪些方法
DELETE:从服务器上删除一份文档
三、状态码:
四、首部
(1)通用首部:既可以出现在请求报文中也可以出现在响应报文中
eg:
Connection:keep-alive保持长连接
Data:XXX报文创建的时间日期
(2)请求首部:描述请求 报文的相关信息
eg:
Accept:text/*,image/*用来通知服务器客户端可以接收哪些媒体类型
Accept-Encoding:gzip通知服务器客户端可以接受哪些编码方式
Accept-Language:en客户端可接受的语言
(3)响应首部:描述响应报文的相关信息
eg:
Accept-Range:none表明服务器不支持客户端对资源的范围请求
Allow:GET,HEAD通知客户端可以对特定资源使用的方法
(4)实体首部:描述实体信息的相关信息
eg:
Content-Language:en实体所使用的语言
(5)扩展首部:规定中未定义的首部
eg:
Cookie:ink=IUOK164y59scoosl3572787用于客户端识别和追踪的扩展首部