这是我参与「第五届青训营 」笔记创作活动的第5天
1.HTTP协议相关
1.1状态码
HTTP 状态码 (Status code) 是 HTTP 协议中用于表示请求/响应状态的三位数字代码。它由服务器在响应中返回,可以帮助客户端理解请求的结果。主要分为五类:
- 1xx (Informational): 表示请求已被接受,继续处理。
- 2xx (Successful): 表示请求已成功被服务器接收、理解、并接受。
- 3xx (Redirection): 表示请求要求进行附加操作以完成。
- 4xx (Client Error): 表示请求中有语法错误或请求无法被服务器理解。
- 5xx (Server Error): 表示服务器在处理请求的过程中发生了错误。
常见的状态码有:
- 200 OK: 请求已成功,请求所希望的响应头或数据体将随此响应返回。
- 201 Created: 请求已经被实现,而且有一个新的资源已经依据请求的需要而建立,且其 URI 已经随 Location 头信息返回。
- 204 No Content: 服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。
- 400 Bad Request: 请求中有语法问题,或不能满足请求。
- 401 Unauthorized: 请求要求身份验证。对于需要登录的网页。
-
- 403 Forbidden: 服务器拒绝请求。
- 404 Not Found: 请求的资源不存在。
- 500 Internal Server Error: 服务器内部错误。
- 503 Service Unavailable: 服务器当前无法处理请求。
这些状态码只是 HTTP 协议中的一部分,还有很多其他状态码。每种状态码都有自己的含义和用途。开发人员应该根据服务器的状态返回相应的状态码,以便客户端能够正确地处理请求。
1.2HTTP Method
HTTP 方法 (Method) 是 HTTP 协议中用于表示请求类型的字符串。常用的 HTTP 方法有:
1.3HTTP 请求头&响应头
请求头 (Request headers) 包含了客户端发送给服务器的附加信息。它们用于告诉服务器如何处理请求。常见的请求头包括:
响应头 (Response headers) 包含了服务器发送给客户端的附加信息。它们用于告诉客户端如何处理响应。常见的响应头包括:
1.4HTTP缓存
HTTP 中的缓存是指将服务器返回的响应保存在客户端上,以便下次请求时使用。这样可以减少网络传输,提高请求的响应速度。
强缓存 (Strong caching) 是一种强制使用缓存的方式。它通过使用 HTTP 头中的 Expires 或 Cache-Control 字段来告诉客户端在特定时间之前,可以直接使用缓存中的响应,而不需要再次请求服务器。
协商缓存 (Cache validation) 是一种允许客户端与服务器协商使用缓存的方式。它通过使用 HTTP 头中的 Last-Modified 或 ETag 字段来告诉客户端缓存的响应是否过期。当客户端发送请求时,会带上这些字段的值,服务器会根据这些值来判断缓存是否过期,如果过期则返回新的响应,否则返回 304 状态码。
强缓存通常在静态资源上使用,因为它们不会经常更改。而协商缓存通常在动态资源上使用,因为它们会经常更改。