Accept: 容许哪些媒体类型。 Accept-Charset: 容许哪些字符集。 Accept-Encoding: 容许哪些编码。 Accept-Language: 容许哪些语言。 Cache-Control: 缓存策略,如no-cache,详见官方文档。 Connection: 链接选项,例如是否容许代理。 Host: 请求的主机。 If-None-Match: 判断请求实体的Etag是否包含在If-None-Match中,若是包含,则返回304,使用缓存,见Etag。 If-Modified-Since: 判断修改时间是否一致,若是一致,则使用缓存,。 、 If-Match: 与If-None-Match相反。 If-Unmodified-Since: 与If-Modified-Since相反。 Referer: 代表这个请求发起的源头。 User-Agent: 这个你们相信应该很熟悉了,就是常常用来作浏览器检测的userAgent。 Cache-Control: 缓存策略,如max-age:100,详见官方文档。 Connection: 链接选项,例如是否容许代理。 Content-Encoding: 返回内容的编码,如gzip。 Content-Language: 返回内容的语言。 Content-Length: 返回内容的字节长度。 Content-Type: 返回内容的媒体类型,如text/html。 Data: 返回时间。 Etag: entity tag,实体标签,给每一个实体生成一个单独的值,用于客户端缓存,与If-None-Match配合使用。 Expires: 设置缓存过时时间,Cache-Control也会相应变化。 Last-Modified: 最近修改时间,用于客户端缓存,与If-Modified-Since配合使用。 Pragma: 彷佛和Cache-Control差很少,用于旧的浏览器。 Server: 服务器信息。 Vary: WEB服务器用该头部的内容告诉 Cache 服务器,在什么条件下才能用本响应所返回的对象响应后续的请求。假如源WEB服务器在接到第一个请求消息时,其响应消息的头部为:Content-Encoding: gzip; Vary: Content-Encoding那么 Cache 服务器会分析后续请求消息的头部,检查其 Accept-Encoding,是否跟先前响应的 Vary 头部值一致,便是否使用相同的内容编码方法,这样就能够防止 Cache 服务器用本身 Cache 里面压缩后的实体响应给不具有解压能力的浏览器。