HTTP GET 请求是一种用于从服务器获取资源的请求方法,其主要步骤如下:
1. **客户端发起请求**
客户端(如浏览器或客户端程序)通过 URL 向服务器发起 GET 请求。请求中包含请求行、请求头,但通常没有请求体。
2. **建立 TCP 连接**
客户端通过三次握手建立与服务器的 TCP 连接。
3. **发送 HTTP GET 请求**
客户端发送 HTTP GET 请求,请求行中包含目标资源的 URL。例如:
```
GET /path/to/resource?param1=value1¶m2=value2 HTTP/1.1
Host: www.example.com
```
请求参数通过 URL 的查询字符串传递。
4. **服务器处理请求**
服务器接收到 GET 请求后,根据请求的 URL 和查询参数处理请求,并返回相应的资源。
5. **返回 HTTP 响应**
服务器返回 HTTP 响应,响应中包含状态码、响应头和响应体。状态码表示请求的处理结果(如 200 表示成功,404 表示未找到资源)。
6. **客户端接收响应**
客户端接收服务器返回的响应,并根据响应内容进行处理(如渲染网页或处理数据)。
7. **关闭 TCP 连接**
一次完整的 HTTP GET 请求完成后,客户端和服务器通过四次挥手关闭 TCP 连接。
### 注意事项
- GET 请求的参数通过 URL 传递,因此不适合携带敏感信息(如密码)。
- GET 请求的 URL 长度可能受到浏览器或服务器的限制,通常建议不超过 2KB。
- GET 请求是幂等的,即多次请求相同资源的结果相同。