本文节选自《网络协议》。
4、HTTP常用请求头大揭秘
上面列出了报文的各种请求头、响应头、状态码,是不是感到特别晕呢。这节我们就专门挑一些最常用的请求头,举例说明请求头对应支撑的HTTP功能。
4.1、数据类型、压缩编码,语言,内容协商和质量值
我们来看一个最基本的HTTP交互。
其中,GET表示方法,就不多说了。
Host:Host 请求头指明了请求将要发送到的服务器主机名和端口号。Host让虚拟主机托管成为了可能,也就是一个IP上提供多个Web服务。
协商
客户端先发送Accept、Accept-Encoding、Accept-Language请求头进行协商。其中:
- Accept指明了客户端可理解的MIME type,用“,”做分隔符,列出多个类型;
- Appcep-Encoding指明客户端可理解的压缩格式;
- Accept-Languate指明客户端可理解的自然语言;
可以给每个协商项指定质量值q。质量值从0~1,1最高,表示最期望服务器采用该类型,0表示拒绝接受该类型。
协商结果
服务端会在响应头里面告知协商的结果:
- Content-Type表示服务端实际采用的类型;
- Content-Encoding表示服务端实际采用的压缩格式,如果相应报文没有该请求头,则代表服务端没有开启压缩;
- Content-Language表示服务端实际采用的自然语言;
服务端是怎么协商的
…
文章内容发生变更,点击阅读原文:HTTP常用请求头大揭秘