HTTP 中头部字段概念:
1、Accept告知WEB效劳器自己同意什么介质类型,*/*表示任何类型,type/*表示该类型下的所有子类型,type/sub-type
2、Accept-Charset阅读器申明自己接收的字符集
3、Accept-Encoding阅读器申明自己接收的编码方式,通常指定紧缩方式,是不是支持紧缩,支持什么紧缩方式(gzip,deflate)
4、Accept-Language阅读器申明自己接收的语言
5、Accept-RangesWEB效劳器说明自己是不是同意获取其某个实体的一部份(比如文件的一部份)的请求。bytes:表示同意,none:表示不同意。
6、Age今世理效劳器用自己缓存的实体去响应请求时,用该头部说明该实体从产生到此刻通过量长时刻了。
7、Allow列出了请求URI(Request-URI)指定资源所支持的几种方式。Allow头域必需出
此刻405(方式不被许诺)响应中
8、retry是什么意思Authorization当客户端接收到来自WEB效劳器的 WWW-Authenticate 响应时,用该头部来回应自己的身份验证信息给WEB效劳器。
9、Cache-Control:(1)请求:
no-cache(不要缓存的实体,要求此刻从WEB效劳器去取)
max-age(只同意 Age 值小于 max-age 值,而且没有过时的对象)max-stale(能够同意过去的对象,可是过时时刻必需小于max-stale 值)
min-fresh(同意其新鲜生命期大于其当前 Age 跟 min-fresh 值之和的缓存对象)
(2)响应:
public(能够用 Cached 内容回应任何用户)
private(只能用缓存内容回应先前请求该内容的那个用户)
no-cache(能够缓存,可是只有在跟WEB效劳器验证了其有效后,才能返回给客户端)
max-age(本响应包括的对象的过时时刻)
ALLno-store(不许诺缓存)
10、Connection:(1)请求:
close(告知WEB效劳器或代理效劳器,在完本钱次请求的响应后,断开连接,不要等待本次连接的后续请求了)
keepalive(告知WEB效劳器或代理效劳器,在完本钱次请求的响应后,维持连接,等待本次连接的后续请求)
(2)响应:
close(连接已经关闭)
keepalive(连接维持着,在等待本次连接的后续请求)
Keep-Alive:若是阅读器请求维持连接,那么该头部说明希望 WEB 效劳器维持连接多长时刻(秒)例如:Keep-Alive:300
11、Content-EncodingWEB效劳器说明自己利用了什么紧缩方式(gzip,deflate)紧缩响应中的对象。
例如:Content-Encoding:gzip
12Content-LanguageWEB 效劳器告知阅读器自己响应的对象的语言。
13Content-LengthWEB 效劳器告知阅读器自己响应的对象的长度。
例如:Content-Length: 26012
14Content-Location用来为消息里的实体提供对应资源的位置,当实体的访问位置和请求URI不是同一名置时一个效劳器应该为响应实体的变量提供一个Content-Location头域;尤其是在资源有多个对应的实体时,而且这些实体会有各自的位置,能够通过这些位置单独地访问到各个实体,这时效劳器应该为一个特定的变量提供一个Content-Location头域
15Content-MD5:该实体头域含有的是实体主体的MD5摘要,这是为了给一个end-to-end消息的实体主体的提供完整性检测。
16Content-RangeWEB 效劳器说明该响应包括的部份对象为整个对象的哪个部份。例如:Content-Range: bytes 21010-47021/47022
17Content-TypeWEB 效劳器告知阅读器自己响应的对象的类型。
例如:Content-Type:application/xml
18Date说明产生消息的日期和时刻,此头域值是一个HTTP-date;它必需用RFC1123里的date格式发送。
例如:Date:Sun, 01 Jun 2020 12:35:47 GMT
19、ETag确实是一个对象(比如URL)的标志值,就一个对象而言,比如一个 html 文件,若是被修改了,其 Etag 也会别修改,因此,ETag 的作用跟 Last-Modified 的作用差不多,要紧供 WEB 效劳器判定一个对象是不是改变了。
比如前一次请求某个 html 文件时,取得了其 ETag,当这次又请求那个文件时,阅读器就会把先前取得的 ETag 值发送给WEB 效劳器,然后 WEB 效劳器会把那个 ETag 跟该文件的当前 ETag 进行对照,然后就明白那个文件有无改变了。
20Expect用于指明客户端需要的特定效劳器行为一个效劳器若是不能明白得或遵循一个请求里Expect头域的任何expectation值,那么它必需以适合的错误状态码响应。若是效劳器不能知足任何expection,效劳器必需以417(期望失败)状态码响应,或若是效劳器对请求碰到其它问题,效劳器必需发送4xx状态码。
21ExpiresWEB效劳器说明该实体将在何时过时,关于过时了的对象,只有在跟WEB效劳器验证了其有效性后,才能用来响应客户请求。是 HTTP/ 的头部。
例如:Expires:Sat, 23 May 2020 10:02:12 GMT
22From请求报头域,若是有的话,应该包括用户代应当前操作用户的email地址。那个地址应该是机械可用的地址
23Host客户端指定自己想访问的WEB效劳器的域名/IP 地址和端口号。
例如:Host:If-Match若是对象的 ETag 没有改变,其实也就意味著对象没有改变,才执行请求的动作。
25If-Modified-Since若是请求的对象在该头部指定的时刻以后修改了,才执行请求的动作(比如返回对象),不然返回代码304,告知阅读器该对象没有修改。
例如:If-Modified-Since:Thu, 10 Apr 2020 09:14:42 GMT
26If-None-Match若是对象的 ETag 改变了,其实也就意味著对象也改变了,才执行请求的动作。
27If-Range阅读器告知 WEB 效劳器,若是我请求的对象没有改变,就把我缺少的部份给我,若是对象改变了,就把整个对象给我。阅读器通过发送请求对象的 ETag 或 自己所明白的最后修改时刻给 WEB 效劳器,让其判定对象是不是改变了。老是跟 Range 头部一路利用。
28If-Unmodified-Since若是请求的对象在该头部指定的时刻以后没修悔改,才执行请求的动作(比如返回对象)。
29Last-ModifiedWEB 效劳器以为对象的最后修改时刻,比如文件的最后修改时刻,动态页面的最后产生时刻等等。
例如:Last-Modified:Tue, 06 May 2020 02:42:43 GMT
30LocationWEB 效劳器告知阅读器,试图访问的对象已经被移到别的位置了,到该头部指定的位置去取。
例如:Location:Max-Forwards请求头域提供一种机制,那确实是利用TRACE和OPTIONS方式去限制代理或网关的数量,这些代理或网关能传递请求到下一个入流(inbound)效劳器。
32Pragma要紧利用 Pragma: no-cache,相当于 Cache-Control: no-cache。
例如:Pragma:no-cache
33Proxy-Authenticate代理效劳器响应阅读器,要求其提供代理身份验证信息。
34Proxy-Authorization:阅读器响应代理效劳器的身份验证请求,提供自己的身份信息。