js随手笔记之一 存储之cookies

概念〈〈

什么是cookie?

全称:HTTP Cookie,最初是用于客户端存储回话信息的 。cookie在性质上是绑定在特定的域名下,当设定一个cookie后再给创建它的域名发送请求时,都会包含这个cookie。

cookie的作用是什么?

1. 当发送请求时会携带客户端所存储的回话信息,可用于服务器端验证客户是来自于发送的哪个请求。

2. 可用于为客户提供个性化的服务,例如:自动登录等

javascript 如何读写cookie?〈〈

1. 首先,我们先了解下cookie包含哪些属性岗位

2. 读写,下面是比较通用的原生js操作cookie的方法

在客户端中都是通过document.cookie这个属性来读写cookie。

每一个cookie都是以一个名/值对的形式存在,设置的时候,可以根据我们的需求,给cookie添加不同的属性值,例如我们可以这样设置:document.cookie="testCookie=123";这样我们设置了一个名为testCookies,值为123的cookie。

又比如,我们想要在某个cookie上加一个过期时间,超过这个时间cookie将自动

消失,例如:

document.cookie="testCookie=123;expires=date_GMT";其中date_GMT 是Date类型的GMT_String格式。

如果当我们设置的cookie已经存在于客户端中时,则会将已经存在的cookie覆盖掉。

有趣的是:当我们设置cookie的时候,我们是直接给document.cookie这个属性赋值,而我们直接读取这个属性的时候是获取到了所有cookie。

3. 删除cookie

cookie的限制和弊端〈〈

因为cookie是存储在客户端的计算机上的,为了不让cookie被恶意使用,浏览器加入了一些针对cookie的限制(单个域名):

1. 数量:20个(不同的浏览器数量有所不同,ie7以下20个,ie7以上、Firefox:50个)

2. 大小:大多数浏览器都限制在4095B以内。

3. 清理机制:当cookie的数量或大小超过浏览器的限制之后,浏览器将会清除以前设置的cookie,腾出空间给新设置的cookie。在IE和Opera 会清理近期最少使用的cookie,Firefox会随机清理cookie。

cookie也有缺陷,cookie作为存储在客户端的会话信息,当我们给某个域名发送请求时,也会将该域名下的cookie携带发送给服务器,这不可避免的占用了我们一部分网路资源,造成浪费。

寄语:请合理使用cookie,避免资源浪费和性能。cookie并不是存储在一个安全的环境中,所以一定不要存储重要的数据。

猜你喜欢

转载自blog.csdn.net/RJ0024/article/details/86294695
今日推荐