HTTP 请求
请求格式
请求格式由首行、请求头(Header)、空行和正文(Body)组成。

首行组成
首行由请求方法、URL 和版本号组成,使用空格分隔。

请求方法
| 方法 | 说明 | 支持的 HTTP 版本 |
|---|---|---|
| GET | 获取资源 | 1.0, 1.1 |
| POST | 传输实体主体 | 1.0, 1.1 |
| PUT | 传输文件 | 1.0, 1.1 |
| DELETE | 删除文件 | 1.0, 1.1 |
| HEAD | 获取报文首部 | 1.0, 1.1 |
| OPTIONS | 询问支持的方法 | 1.1 |
| TRACE | 追踪路径 | 1.1 |
| CONNECT | 要求用隧道协议连接代理 | 1.1 |
| LINK | 建立和资源之间的联系 | 1.0 |
| UNLINK | 断开连接关系 | 1.0 |
-
GET 方法:最常用的 HTTP 方法,常用于获取服务器上的某个资源。
GET 方法特点:首行的第一部分为 GET。URL 的 query string 可以为空,也可以不为空。Header 部分有若干个键值对结构。Body 部分一般没有,正文包含在 URL 的查询字符串中。
-
POST 方法:常用于提交用户输入的数据给服务器(例如登录页面)。可通过 HTML 中的 form 标签构造,或使用 JavaScript 的 Ajax 构造。
POST 请求的特点:首行的第一部分为 POST。URL 的 query string 一般为空(也可以不为空)。Header 部分有若干个键值对结构。Body 部分一般不为空,Body 内的数据格式通过 Header 中的 Content-Type 指定,长度由 Content-Length 指定。
GET 与 POST 的区别:
- 语义不同:GET 一般是获取数据,POST 一般是提交数据。
- 携带数据的方式不同:
- GET 的 Body 一般为空,需要传递的数据通过 query string 传递。
- POST 的 query string 一般为空,需要传递的数据通过 Body 传递。



















