fiddler响应报文的headers属性详解

(1)Cache头域

1. Cache-Control

  • 在请求报文已经说过了,用于设置缓存的属性,浏览内容不被缓存。

2. Data

  • 生成消息的具体时间和日期。

3. Expires

  • 浏览器会在指定过期时间内使用本地缓存。

4. Pragma

  • 防止页面被缓存(浏览器内容不会被缓存)。
    Prama只有一个用法,例如,Pragma:no-cache。

(2)Cookie/Login 头域

1. P3P

  • 用于跨域设置Cookie,这样可以解决iframe跨域访问Cookie的问题。

2. Set-Cookie

  • 用于把Cookie发送到客户端浏览器,每一个写入Cookie都会生成一个Set-Cookie。

(3) Entity头域

1. ETag

  • 和 If-None-Match配合使用

2. Last-Modified

  • 用于指示资源的最后修改日期和时间。

3. Content-Type

  • Web服务器告诉浏览器自己响应的对象的类型和字符集。

4. Content-Length

  • 指明实体正文的长度,以字节方式储存的十进制数字来表示。在数据下行的过程中,Content-Length的方式要预先在服务器中缓存所有数据,然后所有数据再一股脑儿地发给客户端。

5. Content-Encoding

  • Web服务器表明自己使用了什么压缩方法(gzip,deflate)压缩相应中的对象。

6. Content-Language

  • Web服务器告诉浏览器自己响应的对象的语言。

(4) Miscellaneous头域

1. Server

  • 指明HTTP服务器的软件信息。

2. X-AspNet-Version

  • 如果网站是用ASP.NET开发的,这个header用来表示ASP.NET的版本。

3. X-Powered-By

  • 表示网站是用什么技术开发的。

(5) Transport头域

Connection
Connection: keep-alive

  • 当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,如果客户端再次访问这个服务器上的网页,会继续使用这一条已经建立的连接。

Connection: close

  • 代表一个request完成后,客户端和服务器之间用于传输HTTP数据的TCP连接会关闭,当客户端再次发送Request时,需要重新建立TCP连接。
  • 一个传输层的实际环流,它是建立在两个相互通信的应用程序之间。
  • 在HTTP1.1,request和response头中都有可能出现一个Connection的头,此header的含义是当Client和Server通信时对于长链接如何进行处理。
  • 在HTTP1.1中,Client和Server都是默认对方支持长链接的。如果Client使用HTTP1.1协议,但又不希望使用长链接,则需要在header中指明Connection的值为close;如果Server方也不想支持长链接,则在response中也需要明确说明Connection的值为close。不论request,还是response的header中包含了值为close的Connection,都表明当前正在使用的TCP链接在当天请求处理完毕后会被断掉。以后Client在进行新的请求时就必须创建新的TCP链接了。
    在此明确一个容易混淆的概念:HTTP协议的无状态和Connection: keep-alive 是两个不同的概念。无状态是指协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。从另一方面讲,打开一个服务器上的网页和你之前打开这个服务器上的网页之间没有任何联系。HTTP是一个无状态的、面向连接的协议,无状态不代表HTTP不能保持TCP连接,更不能代表HTTP使用的是UDP协议(无连接)。
    从HTTP1.1起,默认都开启了Keep-Alive,保持连接特性,简单地说,当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,如果客户端再次访问这个服务器上的网页,会继续使用这一条已经建立的连接。Keep-Alive不会永久保持连接,它有一个保持时间,可以在不同的服务器软件(如Apache)中设定这个时间

(6)Location头域

Location

  • 用于重定向一个新的位置,包含新的URL地址。

(7)Security头域

Strict-Transport-Security: max-age=31536000

  • 网站通过HTTP Strict Transport Security (HSTS)通知浏览器,这个网站禁止使用HTTP方式加载,浏览器应该自动把所有尝试使用HTTP的请求自动替换为HTTPS请求。
  • 当你的网站第一次发送HTTPS请求时,服务器响应Strict-Transport-Security头,浏览器记录下这些信息。然后后面尝试访问这个网址的请求都会自动把HTTP替换为HTTPS。当HSTS头设置的过期时间到了,后面通过HTTP的访问恢复到正常模式,不会再自动跳转到HTTPS。每次浏览器接收到Strict-Transport-Security头,它都会更新这个网站的过期时间,所以网站可以刷新这些信息,防止过期发生。

你可能感兴趣的:(fiddler响应报文的headers属性详解)