(HTTP解析)web请求过程全解析二

(HTTP解析)web请求过程全解析二_第1张图片

 以下将展示一个请求的请求头和响应头,并对简单的解释

(HTTP解析)web请求过程全解析二_第2张图片

请求头由浏览器发出:

Accept:客户端(这里指的是浏览器)支持的内容类型,响应头Content-Type返回服务的内容类型两者之间相互对应

Accept-Encoding:Accept-Encoding 会将客户端能够理解的内容编码方式——通常是某种压缩算法——进行通知。通过内容协商的方式,服务端会选择一个客户端提议的方式,使用并在响应报文首部 Content-Type 中通知客户端该选择

Accept-Language:Accept-Language请求头允许客户端声明它可以理解的自然语言,以及优先选择的区域方言。借助内容协商机制,服务器可以从诸多备选项中选择一项进行应用, 并使用Content-Language 应答头通知客户端它的选择

Cache-Control:max-age=0表示服务端最大的缓存时间为0s,传达的意思就是让服务端不缓存从客户端来的请求。

Connection:决定当前的事务完成后,是否会关闭网络连接。如果该值是“keep-alive”,网络连接就是持久的,不会关闭,使得对同一个服务器的请求可以继续在该连接上完成。

Host:请求头指明了服务器的域名

Referer:当前页面是从哪个链接跳过来的。服务端一般使用 Referer 首部识别访问来源,可能会以此进行统计分析、日志记录以及缓存优化等。

Upgrade-Insecure-Requests:用来向服务器端发送信号,表示客户端优先选择加密及带有身份验证的响应,并且它可以成功处理 Upgrade-Insecure-Requests CSP 指令。

User-Agent:首部包含了一个特征字符串,用来让网络协议的对端来识别发起请求的用户代理软件的应用类型、操作系统、软件开发商以及版本号。

响应头由服务器发出,浏览器接收:

Cache-Control:private,表示当前响应只能被用户机缓存,代理服务器等其他传输途径无法缓存该响应

Date:表示报文创建的日期和时间

Expires:响应头包含日期/时间, 即在此时候之后,响应过期。无效的日期,比如 0, 代表着过去的日期,即该资源已经过期

Server:首部包含了处理请求的源头服务器所用到的软件相关信息。

Set-Cookie:响应头的Cookie暂时不知道有什么作用。不晓得写到哪里去了

Strict-Transport-Security:告诉浏览器只能通过HTTPS访问当前资源,而不是HTTP,max-age=172800表示在172800秒内凡是访www.baidu.com这个域名都将采用HTTPS

Transfer-Encoding:指明了将 entity 安全传递给用户所采用的编码形式

Vary:是一个HTTP响应头部信息,它决定了对于未来的一个请求头,应该用一个缓存的回复(response)还是向源服务器请求一个新的回复。它被服务器用来表明在 content negotiation algorithm(内容协商算法)中选择一个资源代表的时候应该使用哪些头部信息(headers)

(HTTP解析)web请求过程全解析二_第3张图片

 (HTTP解析)web请求过程全解析二_第4张图片

 当我们需要请求一个全新的界面时(不通过浏览器缓存和服务器缓存)可以按Ctrl+F5,此时观察控制台

(HTTP解析)web请求过程全解析二_第5张图片

Pragma:no-cache 与 Cache-Control: no-cache 效果一致。强制要求缓存服务器在返回缓存的版本之前将请求提交到源头服务器进行验证。Pragma用来向后兼容只支持 HTTP/1.0 协议的缓存服务器,那个时候Cache-Control与HTTP/1.1还没出来,所以日常如果需要设置的话,为了排出HTTP版本的支持因素,一般两个都写出来。

你可能感兴趣的:(网络)