HTTP头部字段

Host: (必须的) 当一台计算机托管了多个虚拟主机,IP一样,域名不一样,根据Host字段。
     User-Agent:描述发起客户端的信息,以便服务器返回适合此浏览器或者系统的信息。
     Date:  创建的时间。
     Server: 返回服务器的信息。(不是必要出现,会把服务器信息暴露出来,可能受到攻击) 。
     Content-Length:报文里请求体的长度。  
  ------ 编码、语言、压缩相关的
     Accept/Content-Type: 客户端希望接受的类型 / 服务器发送的类型。
     Accept-Encoding/Content-Encoding:客户期望的压缩格式 / 服务器返回的压缩格式
                    gzip:最流行的
                    deflate:
                    br:专门为HTTP优化的压缩算法
     Accept-Language/Content-Language:客户期望的语言类型 / 服务器返回的语言类型。
     Accept-Charset:期望的字符集 ,但服务器没有Content-Charset,会在Content-Type:charset=xxx表示
       (以上Accept请求的时候,可以用q=?来表示优先级)
     Vary:服务器来记录一些参考哪些字段信息的。在代理服务器中用到。比如A、B两个不同的浏览器,请求同一个资源,在缓存服务器中存着2个不同浏览器版本的,Vary来区分。
  ---------分块传输
     Transfer-Encoding:chunked:与Content-Length互斥。
  ---------范围请求
     Range:bytes=x-y  请求数据范围。
     Accept-Ranges:bytes/none   服务器告诉浏览器支不支持范围请求。
         服务器收到Ranges后,判断,超出范围416,正常返回206(表示部分资源)
     Content-Ranges:bytes 0-10/100  服务器返回信息。
  --------
     Connection:keep-alive/close
     Location:重定向字段
     Cookie/Set-Cookie:存放一些服务器委托在浏览器里面的数据。
                         Expires:绝对时间,一个截止日期
                         Max-Age:多少秒
                         Domain:指定Cookie域名
                         Path:指定Cookie路径
                         HttpOnly:只能在Http请求中获取Cookie
                         SameSite:Strict
                                   Lax
                                   None
                         Secure:Cookie只能用Https加密传输
     Cache-Control:缓存的相关字段
                    max-age:多少秒,从响应报文创建开始算起(比Cookie短)
                    s-maxage:代理服务器上存在的时间
                    private:客户端缓存
                    public:客户端和代理服务器都可以缓存
                    no-store:不允许缓存
                    no-cache:使用之前必须询问服务器
                    must-revalidate:缓存没过期,直接使用,过期了,访问服务器
                    proxy-revalidate:代理上面缓存过去,去访问服务器
                    no-transform:不允许代理服务器上更改数据
                    max-stale=x:当前 < x+缓存期
                    min-fresh=y:当前+y < 缓存期
                    only-if-cached:只接受代理服务器上的数据,不接受源服务器上的。代理过期或没有,504
     Expires:绝对时间。

     Last-modified:最后缓存时间
     If-Modified-Since:
     ETag:资源的唯一标识。第一次响应报文返回。
            强:必须完全符合
            弱:在值的前面加上'W/',语义没变化就行
     If-None-Match:获取ETag的值,向服务器发送

     输入URL地址,使用缓存
     刷新 在请求头里面加入 Cache-Control: max-age=0  返回最新的资源
     ctrl+f5(强制刷新)   删除缓存,重新请求完整的资源


版权声明:本文为m0_45031553原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。