date
服务器收到请求之后去获取了资源并且发送给客户端的时间,不是产生或者修改对象的时间
age
消息对象在缓存代理服务器中存储的时长, 以秒为单位
set-cookie
服务器端设置cookie的方式,包括如下信息
- expires/max-age(有效期)
- domain(在什么domain下有效,在有子域名的网站中可以设置为顶级域名,那么就可以在各个子域名中共享了)
- path(在什么路径下有效,默认的只会生成cookie的页面以及同级目录页面或者子目录页面生效,可以设置为/表示在根域名下都有效)
- secure: https下能发送这个cookie
- SameSite: 这个cookie是否是同站cookie还是第三方cookie(第三方cookie会引起XSRF攻击),有两个类型的值:strict和lax。strict表明这个cookie只能作为第一方的cookie不能作为第三方cookie,lax是宽松模式表明如果网站上是通过a标签或者window.open打开的并且请求方法是get就可以带上这个cookie
- httpOnly: 如果设置了httpOnly就表明使用js不能获取到cookie内容
Accept-Encoding
浏览器告诉服务器可以支持的编码是什么
Content-Encoding
服务器告诉浏览器他采用的压缩实体的编码方式是什么,客户端收到请求的实体之后就用这个编码来进行解压缩
Transfer-Encoding
传输实体所使用的编码方式是什么
- chunked: 如果请求的实体很大或者需要根据数据库动态生成,等待实体准备好需要的时间比较长,因此可以采用分开编码的方式,将实体分块传入给客户端。当返回的content-length为0的时候就表明已经传完了
connection:keep-alive
每一次的http都会进行一次三次握手的tcp连接,设置connection:keep-alive表明建立了一次tcp连接之后不要关闭连接,后面的http请求还是使用这次的tcp连接。但是这个tcp并不是一直保持连接,可以在服务器端设置
x-frame-options
告诉浏览器是否允许页面被嵌入到其他iframe或者frame或者object中。主要用于预防点击劫持攻击
cache-control
- public: 响应可以被任何对象缓存(包括浏览器,代理服务器)
- private: 用户可以缓存但是代理服务器不可以缓存
- no-cache: 在发布缓存副本之前,强制高速缓存将请求提交给原始服务器进行验证
- must-revalidate: 缓存必须在使用之前验证旧资源的状态,并且不可使用过期资源
DNT(Do Not Track)
表明用户对于网站追踪的偏好,允许用户指定自己是否更注重个人隐私还是定制化内容
X-DNS-Prefetch-Control
控制浏览器的DNS预获取的功能
表示访问的来源信息
一下情况会发送referer字段:
- 提交表单的时候
- 加载静态资源的时候(js, css, 图片等)
- 用户点击网页上的链接
referer的作用
- 在xsrf攻击中可以判断referer的来源是否是合法的,从而决定请求是否被处理
- 统计网站流量的贡献
date
服务器收到请求之后去获取了资源并且发送给客户端的时间,不是产生或者修改对象的时间
age
消息对象在缓存代理服务器中存储的时长, 以秒为单位
set-cookie
服务器端设置cookie的方式,包括如下信息
Accept-Encoding
浏览器告诉服务器可以支持的编码是什么
Content-Encoding
服务器告诉浏览器他采用的压缩实体的编码方式是什么,客户端收到请求的实体之后就用这个编码来进行解压缩
Transfer-Encoding
传输实体所使用的编码方式是什么
connection:keep-alive
每一次的http都会进行一次三次握手的tcp连接,设置connection:keep-alive表明建立了一次tcp连接之后不要关闭连接,后面的http请求还是使用这次的tcp连接。但是这个tcp并不是一直保持连接,可以在服务器端设置
x-frame-options
告诉浏览器是否允许页面被嵌入到其他iframe或者frame或者object中。主要用于预防点击劫持攻击
cache-control
DNT(Do Not Track)
表明用户对于网站追踪的偏好,允许用户指定自己是否更注重个人隐私还是定制化内容
X-DNS-Prefetch-Control
控制浏览器的DNS预获取的功能
referer
表示访问的来源信息
一下情况会发送referer字段:
referer的作用