9.Cookie
Cookie是用来存储一些用户信息以便让服务器辨别用户身份的(大多数须要登陆的网站上面会比较常见),好比cookie会存储一些用户的用户名和密码,当用户登陆后就会在客户端产生一个cookie来存储相关信息,这样浏览器经过读取cookie的信息去服务器上验证并经过后会断定你是合法用户,从而容许查看相应网页。固然cookie里面的数据不只仅是上述范围,还有不少信息能够存储是cookie里面,好比sessionid等。html
10.Range(用于断点续传)
- Range:bytes=0-5 指定第一个字节的位置和最后一个字节的位置。用于告诉服务器本身想取对象的哪部分。
2、经常使用的http响应头
1.Cache-Control(对应请求中的Cache-Control)
-
Cache-Control:private 默认为private 响应只可以做为私有的缓存,不能再用户间共享
-
Cache-Control:public 浏览器和缓存服务器均可以缓存页面信息。
-
Cache-Control:must-revalidate 对于客户机的每次请求,代理服务器必须想服务器验证缓存是否过期。
-
Cache-Control:no-cache 浏览器和缓存服务器都不该该缓存页面信息。
-
Cache-Control:max-age=10 是通知浏览器10秒以内不要烦我,本身从缓冲区中刷新。
-
Cache-Control:no-store 请求和响应的信息都不该该被存储在对方的磁盘系统中。
2.Content-Type
- Content-Type:text/html;charset=UTF-8 告诉客户端,资源文件的类型,还有字符编码,客户端经过utf-8对资源进行解码,而后对资源进行html解析。一般咱们会看到有些网站是乱码的,每每就是服务器端没有返回正确的编码。
3.Content-Encoding
- Content-Encoding:gzip 告诉客户端,服务端发送的资源是采用gzip编码的,客户端看到这个信息后,应该采用gzip对资源进行解码。
4.Date
- Date: Tue, 03 Apr 2018 03:52:28 GMT 这个是服务端发送资源时的服务器时间,GMT是格林尼治所在地的标准时间。http协议中发送的时间都是GMT的,这主要是解决在互联网上,不一样时区在相互请求资源的时候,时间混乱问题。
5.Server
- Server:Tengine/1.4.6 这个是服务器和相对应的版本,只是告诉客户端服务器信息。
6.Transfer-Encoding
- Transfer-Encoding:chunked 这个响应头告诉客户端,服务器发送的资源的方式是分块发送的。通常分块发送的资源都是服务器动态生成的,在发送时还不知道发送资源的大小,因此采用分块发送,每一块都是独立的,独立的块都能标示本身的长度,最后一块是0长度的,当客户端读到这个0长度的块时,就能够肯定资源已经传输完了。
7.Expires
- Expires:Sun, 1 Jan 2000 01:00:00 GMT 这个响应头也是跟缓存有关的,告诉客户端在这个时间前,能够直接访问缓存副本,很显然这个值会存在问题,由于客户端和服务器的时间不必定会都是相同的,若是时间不一样就会致使问题。因此这个响应头是没有Cache-Control:max-age=*这个响应头准确的,由于max-age=date中的date是个相对时间,不只更好理解,也更准确。
8.Last-Modified
- Last-Modified: Dec, 26 Dec 2015 17:30:00 GMT 所请求的对象的最后修改日期(按照 RFC 7231 中定义的“超文本传输协议日期”格式来表示)
9.Connection
- Connection:keep-alive 这个字段做为回应客户端的Connection:keep-alive,告诉客户端服务器的tcp链接也是一个长链接,客户端能够继续使用这个tcp链接发送http请求。
10.Etag