HTTP 基础知识

HTTP 协议用于客户端和服务器之间的通信(方向明确),通过请求和响应的交换达成通信。

请求报文包括方法、URI、协议版本、请求首部字段、内容实体。

响应报文包括协议版本、状态码、原因短语、响应首部字段、内容实体。

HTTP 是无状态协议,如需持久化可借助 Cookies。

HTTP 方法用于告知意图,GET 获取资源,POST 传输实体主体,PUT 传输文件,HEAD 只获取报文首部而忽略主体。

初始版本中,每次通信就要断开一次 TCP 连接,在 1.1 中,默认的链接都是持久连接。管线化使得不需要等待响应就可以继续发送下一个请求。

Cookies:请求报文(-) -> 响应报文(生成 Cookies 信息)-> 请求报文(自动发送保存的 Cookies 信息)

HTTP 状态码:描述返回的请求结果。2XX 成功,3XX 重定向,4XX 错误(归因客户端),5XX 错误(归因服务器)。事实上不少状态码响应都与实际状况不一致。

单台主机在 1.1 版本下可以实现多个域名,利用虚拟服务器。

代理(正常转发,分类:是否缓存,是否透明)、网关(可能改变后续协议种类)、隧道(透明,不解析)等应用程序实现通信数据的转发。

缓存可能存在于缓存服务器(一种代理服务器)上,也可能存在于客户端上。

原文地址:https://www.cnblogs.com/mollnn/p/13654349.html