客户端与服务器用HTTP通信时通过报文来传递信息。HTTP报文可分为两类:请求报文、响应报文。
1、请求报文:客户端向服务器请求一个动作。一般格式是:
<method> <request-URL> <version> <headers> <entity-body>
其中,method代表希望服务器执行的动作,如GET、POST、HEAD等;request-URL命名了所请求资源的完整URL;version代表报文使用的HTTP版本,格式为:HTTP/<major>.<minor>;headers是HTTP首部;entity-body代表实体的主体部分。
常用的HTTP方法:
方法 | 描述 | 是否包含主体 |
GET | 从服务器获取一份文档 | 否 |
HEAD | 只从服务器获取文档首部 | 否 |
POST | 向服务器发送数据 | 是 |
PUT | 将请求的主体部分存储在服务器上 | 是 |
TRACE | 对可能经过代理服务器传送到服务器上去的报文进行追踪 | 否 |
OPTIONS | 决定可以在服务器上执行哪些方法 | 否 |
DELETE | 从服务器上删除文档 | 否 |
2、响应报文:将请求的结果返回给客户端。一般格式为:
<version> <status> <reason-phrase> <headers> <entity-body>
其中,status代表状态码;reason-phrase代表原因短语,如OK。
状态码分类:
整体范围 | 已定义范围 | 分类 |
100~199 | 100~101 | 信息提示 |
200~299 | 200~206 | 成功 |
300~399 | 300~305 | 重定向 |
400~499 | 400~415 | 客户端错误 |
500~599 | 500~505 | 服务器错误 |