客户端存储cookie
cookie机制
位于用户的计算机上,用来维护用户计算机中的信息,直到用户删除。
比如我们在网页上登录某个网站时输入用户名及密码时如果保存为cookie,
则每次我们访问的时候就不需要登录网站了。我们可以在浏览器上保存任何文本,
而且我们还可以随时随地的去阻止它或者删除。我们同样也可以禁用或者编辑cookie,
但是有一点需要注意不要使用cookie来存储一些隐私数据,以防隐私泄露
cookie机制(了解)
在程序中,会话跟踪是很重要的事情。理论上,一个用户的所有请求操作都应该属于同一个会话,而另一个用户的所有请求操作则应该属于另一个会话,二者不能混淆。例如,用户A在超市购买的任何商品都应该放在A的购物车内,不论是用户A什么时间购买的,这都是属于同一个会话的,不能放入用户B或用户C的购物车内,这不属于同一个会话。
而Web应用程序是使用HTTP协议传输数据的。HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话。即用户A购买了一件商品放入购物车内,当再次购买商品时服务器已经无法判断该购买行为是属于用户A的会话还是用户B的会话了。要跟踪该会话,必须引入一种机制。
Cookie就是这样的一种机制。它可以弥补HTTP协议无状态的不足。在Session出现之前,基本上所有的网站都采用Cookie来跟踪会话。
本地存储 Web Storage
cookie:饼干甜点
什么是 cookie ?
是一个在客户端的存储空间,在前后端交互的过程中,只要这个空间有内容,就会跟着请求报文带到后端,
自动携带,不需要任何操作。
这个空间前端可以操作,后端也可以操作
cookie的存储形式,就是一个字符串在存储
key=value;key2=value2
cookie的特点
1)有存储大小限制
150条左右
2KB左右
2)有使用限制
在哪个域名下存储的,只能在哪个域名下获取
3)按照域名进行存储的
在浏览器当前的域名下
4)是有时效性的
默认时效是会话级别时效(从浏览器打开到浏览器关闭就没有了)
可以手动设置过期时间
5)前端可以操作,后端可以操作
获取 cookie 的方式
前端:document.cookie 就可以获取
document.cookie = ’ ’ 就是设置
缺点
- cookie是不可靠的,如果被删除,则不存在
- cookie值不安全
- 浪费网络资源
优点
1.多个页面可以共享数据
2.给数据设置有效期,做自动登录
3.通过cookie帮助进行用户信息识别
使用cookie存储数据的缺点
- 大小限制:cookie的大小被限制为4KB
- 带宽资源:每次的HTTP请求都会将本地的cookie发送,浪费部分带宽
- 复杂性:正确操作cookie有一定的复杂性