Content-Language: de-DEContent-Language: en-USContent-Language: de-DE, en-CA
- Content-Encoding 这又是一个比较麻烦的属性,这个实体报头用来压缩媒体类型 。Content-Encoding 指示对实体应用了何种编码 。常见的内容编码有这几种: gzip、compress、deflate、identity ,这个属性可以应用在请求报文和响应报文中
Accept-Encoding: gzip, deflate //请求头Content-Encoding: gzip//响应头
下面是一些实体标头字段文章插图
请求标头上面给出的例子请求报文的属性比较少,下面给出一个 MDN 官网的例子
GET /home.html HTTP/1.1Host: developer.mozilla.orgUser-Agent: Mozilla/5.0 (macintosh; Intel Mac OS X 10.9; rv:50.0) Gecko/20100101 Firefox/50.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflate, brReferer: https://developer.mozilla.org/testpage.htmlConnection: keep-aliveUpgrade-Insecure-Requests: 1If-Modified-Since: Mon, 18 Jul 2016 02:36:04 GMTIf-None-Match: "c561c68d0ba92bbeb8b0fff2a9199f722e3a621a"Cache-Control: max-age=0
HostHost 请求头指明了服务器的域名(对于虚拟主机来说),以及(可选的)服务器监听的TCP端口号 。如果没有给定端口号,会自动使用被请求服务的默认端口(比如请求一个 HTTP 的 URL 会自动使用80作为端口) 。
Host: developer.mozilla.org
上面的 Accpet、 Accept-Language、Accept-Encoding 都是属于内容协商的请求标头,我们会在下面说明Referer
HTTP Referer 属性是请求标头的一部分,当浏览器向 web 服务器发送请求的时候,一般会带上 Referer,告诉服务器该网页是从哪个页面链接过来的,服务器因此可以获得一些信息用于处理 。
Referer: https://developer.mozilla.org/testpage.html
Upgrade-Insecure-RequestsUpgrade-Insecure-Requests 是一个请求标头,用来向服务器端发送信号,表示客户端优先选择加密及带有身份验证的响应 。
Upgrade-Insecure-Requests: 1
If-Modified-SinceHTTP 的 If-Modified-Since 使其成为条件请求:
- 返回200,只有在给定日期的最后一次修改资源后,服务器才会以200状态发送回请求的资源 。
- 如果请求从开始以来没有被修改过,响应会返回304并且没有任何响应体
大白话说就是如果在 Last-Modified 之后更新了服务器资源,那么服务器会响应200,如果在 Last-Modified 之后没有更新过资源,则返回 304 。
If-Modified-Since: Mon, 18 Jul 2016 02:36:04 GMT
If-None-MatchIf-None-Match HTTP请求标头使请求成为条件请求 。对于 GET 和 HEAD 方法,仅当服务器没有与给定资源匹配的 ETag 时,服务器才会以200状态发送回请求的资源 。对于其他方法,仅当最终现有资源的ETag与列出的任何值都不匹配时,才会处理请求 。
If-None-Match: "c561c68d0ba92bbeb8b0fff2a9199f722e3a621a"
ETag 属于响应标头,后面进行介绍 。内容协商内容协商机制是指客户端和服务器端就响应的资源内容进行交涉,然后提供给客户端最为适合的资源 。内容协商会以响应资源的语言、字符集、编码方式等作为判断的标准 。
文章插图
内容协商主要有以下3种类型:
- 服务器驱动协商(Server-driven Negotiation)
- 客户端驱动协商(Agent-driven Negotiation)
- 透明协商(Transparent Negotiation)
内容协商的分类有很多种,主要的几种类型是 Accept、Accept-Charset、Accept-Encoding、Accept-Language、Content-Language 。
Accept
接受请求 HTTP 标头会通告客户端其能够理解的 MIME 类型
那么什么是 MIME 类型呢?在回答这个问题前你应该先了解一下什么是 MIME
MIME: MIME (Multipurpose Internet Mail Extensions) 是描述消息内容类型的因特网标准 。MIME 消息能包含文本、图像、音频、视频以及其他应用程序专用的数据 。
推荐阅读
- 碟仙恐怖吗 玩碟仙会有什么后果
- 腾讯算法:判断一个数是否在40亿个整数中?最后附java代码
- 世界上有没有食人花这种植物 世界上有没有食人花和食人
- 语音识别概论
- 宇宙最早的生物是什么 人类可能是宇宙中第一个文明
- 宇宙生命之谜是一篇介绍科学家探索宇宙生命的什么 科学家经过归纳发现,地球上之所以有生命存在
- 陕西村庄离奇消失真相 1987年陕西一个村庄离奇消失是真的
- 宇宙有没有开始?简述一下宇宙大爆炸理论 宇宙大爆炸理论认为
- 阿斯麦|19亿一台!ASML下一代革命性EUV光刻机:卖爆了
- 汽车电瓶什么牌子好呢