http的请求与响应都有一些表示上下文常用的头部,所谓上下文就是指请求从哪里来,或者说请求 为了响应希望对后续的响应或者请求产生哪些影响。
请求的上下文: User-Agent
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:66.0) Gecko/20100101 Firefox/66.0
这个是Firefox发出的一个请求,中间包含三个部分,第一个部分是Mozilla/5.0,表示浏览器兼容Mozilla版本的,这是现在所有浏览器都遵循的一个结构,后面是comment,注释
Request Headers
请求的上下文: Referer
它表示当前请求其实来自于另外一个页面,浏览器会自动的添加refer头部
referer可以看到来自于Google搜索引擎过来的,这对我们防盗链非常有帮助,比如对图片的请求不希望被某些站点直接引用,这样就可以阻止其访问。
统计分析:比如统计页面是来自于搜索引擎,还是某些入口流量。
缓存优化:比如对某些来源的请求做缓存
防盗链:比如图片等资源不希望被某些站点引用
可以看到User-Agent描述了浏览器的信息。
请求的上下文: From
响应的上下文:Server
响应的上下文:Server
Response Header
响应的上下文: Allow 与 Accept-Ranges
多线程下载和断点续传会涉及到这个头部,这个头部是告诉接下来的请求可以使用什么样的协商方式,所以描述的是上下文的信息。
bytes表示接受range请求,none表示不接受range请求。