当前位置:首页>HTTP>HTTP Header>HTTP 请求Header字段

HTTP 请求Header字段

作者:微学网发布时间:2019-09-07 15:09:49

请求首部字段,顾名思义就知道,使用在请求方,那只能携带客户端的信息,客户端一些请求要求,客户端要求响应的优先级之类的,接下来咱们就看看这19字段的

Accpet

Accept的意思-接受,哪聪明的小伙伴是不是就可以猜到了呢,没错它就是来告知服务器客户端能接受的“媒体类型”,“媒体类型”有是什呢,其实我们可以分成,文本类型、图片类型、视频类型、还有二进制类型

文本类型 text/html,text/css ……
图片类型:image/png image/jpg image/gif …..
视频类型:video/mpeg video/quitime …….
应用程序的二进制 : application/zip applilcation/octet-stream……..

主要的目的就是告诉服务器,客户端能够接受的媒体类型,多个类型以逗号隔开,如果加权重的话以分号;隔开q=1,q的是指0-1最多三位小数的数字,默认是1。

Accept-Charset

Accept-Charset 字面意思大家都可想而知,没错就是客户端可接受的字符集,也可以理解为优先处理字符集,当然q可以一起使用。

Accept-Language

字面意思大家都可想而知,没错就是客户端可接受的自然语言,也可以理解为优先处理的语言,当然q可以一起使用。

Accept-Encoding

字面意思大家都可想而知,没错就是客户端可接受的编码格式,也可以理解为优先处理的编码格式,当然q可以一起使用。

常用的 gzip comperss

If-Match

这个字段比较有意思,它的值是一个”能够表示唯一资源的字符串“,是响应首部字段的ETag的值,作用是和响应端的ETag做比较,如果值一致,响应端就会返回200 和资源,如果不一致就会返回412,客户端再次请求资源

If-None-Match

这个和If-Match左右相反

If-Modified-since

这个字段也比较有意思,当请求首部携带这个字段请求资源的时候,服务器会用请求首部字值:’日期值‘和资源实体的Last-Modified对比,

如果一样就返回304

否则返回200 和响应体

If-Unmodified-Match

和If-Modified-since相反但是,如果一样就返回412,客户端再次请求

If-Ranges

这个字段也比较有意思,他一般结合Range请求首部字段使用,它的值也是一个”能够唯一表示资源的字符串“,服务器会和ETag的值做比较,

如果这一致返回206 和请求的返回值

如果不一致直接返回200和全部的响应资源

Range

这个字段用于范围请求,如果服务器支持范围请求,在请求首部可以添加这个字段,值为”batys:1000-10000“表示请求的范围是100-10000区间。

服务器发现范围请求没有超过资源范围,就会返回206 ok。

如果请求的范围超过资源的范围就会返回200 ok。

如果服务器不支持也会返回200ok。

Host

这个字段一般会出现在,同一个ip下多个虚拟机的请求,用于区分同于ip下不同虚拟机

From

From:’邮箱地址‘,告知服务器如果有什么问题可以联系这个邮箱

Authorization

用于服务器要求客户端验证时,请求时带的字段(一般是DIGUST和BASIC验证)

Proxy-Authorization

用服务器要求代理端web验证时,请求时带的字段

User-Agent

客户端的一些信息,有时候会带用户的邮箱

Referer

用户表示请求原始方的URI

Expcet

询问服务器能不能做某些事情,

如果服务器可以做到返回100 contiune

否则 417 Expectation Failed

TE

大家还记得Accept-Encoding首部字段吗?TE和Accept-Encoding功能很像,用于能够处理的传输编码格式,不过另外还有一个功能还可以知道Trailer分块格式

Max-Forwrads

这个字段也是非常有意思的,他用于最大逐跳,他的值是阿拉伯数字,主要用于测试中间服务器那个出问题了,比如现在有一个请求需要经过10个中间服务器才能请求到真正的服务器,但是突然中间有个服务器down,其实前端是不知道那个服务器down,就需要请求首部加入Max-Forwrads来测试那个服务器出现问题了。