上面的 Accpet、 Accept-Language、Accept-Encoding 都是属于内容协商的请求标头,我们会在下面说明
Referer
HTTP Referer 属性是请求标头的一部分,当浏览器向 web 服务器发送请求的时候,一般会带上 Referer,告诉服务器该网页是从哪个页面链接过来的,服务器因此可以获得一些信息用于处理 。
Referer: https://developer.mozilla.org/testpage.html
Upgrade-Insecure-Requests
Upgrade-Insecure-Requests 是一个请求标头,用来向服务器端发送信号,表示客户端优先选择加密及带有身份验证的响应 。
Upgrade-Insecure-Requests: 1
If-Modified-Since
HTTP 的 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-Match If-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 消息能包含文本、图像、音频、视频以及其他应用程序专用的数据 。也就是说,MIME 类型其实就是一系列消息内容类型的集合 。 那么 MIME 类型都有哪些呢?
文本文件: text/html、text/plain、text/css、application/xhtml+xml、application/xml
图片文件: image/jpeg、image/gif、image/png
视频文件: video/mpeg、video/quicktime
应用程序二进制文件: application/octet-stream、application/zip
比如,如果浏览器不支持 PNG 图片的显示,那 Accept 就不指定image/png,而指定可处理的 image/gif 和 image/jpeg 等图片类型 。
一般 MIME 类型也会和 q 这个属性一起使用,q 是什么?q 表示的是权重,来看一个例子
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
这是什么意思呢?若想要给显示的媒体类型增加优先级,则使用 q= 来额外表示权重值,没有显示权重的时候默认值是1.0 ,我给你列个表格你就明白了 qMIME1.0text/html1.0application/xhtml+xml0.9application/xml0.8* / *
也就是说,这是一个放置顺序,权重高的在前,低的在后,application/xml;q=0.9 是不可分割的整体 。
Accept-Charset
accept-charset 属性规定服务器处理表单数据所接受的字符集 。
accept-charset 属性允许您指定一系列字符集,服务器必须支持这些字符集,从而得以正确解释表单中的数据 。
该属性的值是用引号包含字符集名称列表 。 如果可接受字符集与用户所使用的字符即不相匹配的话,浏览器可以选择忽略表单或是将该表单区别对待 。
推荐阅读
- 香肠派对万圣节有什么武器皮肤-万圣节全新武器皮肤一览让您无可匹敌
- 这些都是发财手相图,看看你有没有
- 这么好的赌运手相看看你有没有
- 和平精英双弹夹bug怎么卡?和平精英卡双弹夹bug图文教程让您百战百胜
- 怎么让一个女生喜欢上你
- 如何让女人对自己死心塌地
- DNF手游鬼剑士体验视频 鬼剑士技能高度还原让您技能天下无双
- 怎么样让皮肤变白(皮肤暗淡怎么变白)
- dnf手游鬼泣加点 dnf手游鬼泣最佳加点方案让您无可匹敌
- 几种富贵命面相你有吗