HTTP协议 Cookie

Cookie的主要用途是用户识别及状态管理。

实现原理:方便管理用户状态,通过web浏览器将一些数据临时写入用户的计算机内,当用户访问时可通过通信方式取回之前发送的Cookie。

调用Cookie的时候,由于可以调用Cookie的有效期,以及发送方的域、路径、协议等信息,所以正规发布的Cookie不是因为来自其他web站点和攻击者的攻击而泄漏。

为Cookle服务的首部字段:

1、Set-Cookie字段的属性

1)expires

指定浏览器可发送Cookie的有效期。

若不指定则默认为会话时间段内。

一旦Cookie从服务端发送到客户端,服务器就不存在可显式删除Cookie的方法,但可通过覆盖已过期的Cookie,实现对客户端的实质性删除。

2)path

用于限制指定Cookie发送范围的文件目录。

3)domain

通过该属性指定的域名可做到与结尾匹配一致。

除了针对具体指定的多个域名发送的Cookie外,不指定domain属性显得更安全。

4)secure

限制web界面仅在HTTPS安全连接时,才可以发送Cookie。

发送Cookie时,指定属性的方法如下:

Set-Cookie: name=value; secure

5)HttpCookie

Cookie的扩展功能,使JavaScript脚本无法获得Cookie。主要目的是为了防止跨站脚本攻击对Cookie的信息窃取。

发送指定HttpOnly属性的方法如下:

Set-Cookie: name=value; HttpOnly

告知服务器,客户端想获得http状态管理支持时,就会在请求中包含从服务器接收到的Cookie。接收多个时,同样可以以多个发送。

下一章:HTTP协议 URL详解

我们通过浏览器上网的时候,首先在浏览器的地址栏里输入一个网址,然后按下回车,浏览器就会跳转到想去的网站,过程如下:我们所说的 "网址",专业术语叫做 URL。 1. 到底什么是 URL到底什么是 URL呢 ...