ARP (Address Resolution Protocol)
是一种用以解析地址的协议,根据通信方的IP地址就可以反查出对应的MAC地址
URI (Uniform Resource Identifier)统一资源标识符
它是URL的超集
http://user:[email protected]:80/dir/index.htm?uid=1#ch1
- http 协议方案名
- user:pass 登录信息 可选
- www.example.jp 服务地址
- 80 服务端口号 可选
- dir/index.htm 带层次的文件路径
- uid=1 查询字条串
- ch1 片段标识符
获取部分内容的范围请求
断点下载:所谓恢复是指能从之前下载中断处恢复下载
#request
GET /tip.jpg HTTP/1.1
Host: www.usagidesign.jp
Range: bytes =5001-10000
#response
HTTP/1.1 206 Partial Content
Date: Fri, 13 Jul 2012 04:39:17 GMT
Content-Range: bytes 5001-10000/10000
Content-Length: 5000
Content-Type: image/jpeg
5001~10●000●字节: Range: bytes=5001-10000
从 5001●字节之后全部的: Range: bytes=5001-
从一开始到 3000 字节和 5000~7000 字节的多重范:Range: bytes=-3000, 5000-7000
请求头部
Range
Range: bytes=5001-10000
对于只需获取部分资源的范围请求,包含首部字段 Range 即可告知 服务器资源的指定范围。上面的示例表示请求获取从第 5001 字节至第 10000 字节的资源。 接收到附带 Range 首部字段请求的服务器,会在处理请求之后返回 状态码为 206 Partial Content 的响应。无法处理该范围请求时,则会返 回状态码 200 OK 的响应及全部资源
Location
使用首部字段 Location 可以将响应接收方引导至某个与请求 URI 位置不同的资源。 基本上,该字段会配合 3xx :Redirection 的响应,提供重定向的 URI。 几乎所有的浏览器在接收到包含首部字段 Location 的响应后,都会 强制性地尝试对已提示的重定向资源的访问。
Retry-After
首部字段 Retry-After 告知客户端应该在多久之后再次发送请求。主 要配合状态码 503 Service Unavailable 响应,或 3xx Redirect 响应一起 使用。 字段值可以指定为具体的日期时间(Wed, 04 Jul 2012 06:34:24 GMT 等格式),也可以是创建响应后的秒数
cookie 设置
secure 属性
Cookie 的 secure 属性用于限制 Web 页面仅在 HTTPS 安全连接时, 才可以发送 Cookie
HttpOnly 属性
Cookie 的 HttpOnly 属性是 Cookie 的扩展功能,它使 JavaScript 脚 本无法获得 Cookie。其主要目的为防止跨站脚本攻击(Cross-site scripting,XSS)对 Cookie 的信息窃取
https 数字证书颁发
- 服务器向认证机构提交了【服务器-公钥】
- 认证机构用其【认证机构-私钥】对【服务器-公钥】数字签名,并向服务器颁发【认证机构-公钥】
- 服务器给浏览器发送【服务器-公钥】及【服务器-公钥数字签名】
- 浏览器用【认证机构-公钥】对【服务器-公钥数字签名】进行验证合法性
- 浏览器用【服务器-公钥】进行对报文加密发送
- 服务器用【服务器-私钥】进行解密
https 的加密通信(用HTTPS采用混合加密机制)
- 在【数字证书颁发】第5环节中,浏览器生成一个【master-secret】的对称加密,使用【服务器-公钥】进行加密【pre-master-secret】
- 服务器解密【pre-master-secret】 转成【master-secret】
- 后续的通信就使用【master-secret】来加密报文
注意:
- 浏览器拥有的【认证机构-公钥】,是事先植入到浏览器中的。不需要去向认证机构获取
- 浏览器用【认证机构-公钥】对【公钥证书-数字签名】进行验证
- 是服务器给客户端公钥证书,这里就能验证该证书是不是一个有效的证书,从而证明服务端是正确的
- 用HTTPS采用混合加密机制,在颂发证书时使用非对称加密,而在传输报文时,使用对称加密