localStorage、sessionStorage、cookie

本文详细介绍了前端浏览器的三种本地存储方式localStorage、sessionStorage和cookie,包括它们的生命周期、数据大小限制、跨域特性以及在实际场景中的应用。还探讨了Cookie的特性和工作流程,以及localStorage和sessionStorage的用法和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言

前端浏览器本地存储的方式有三种,分别是 localStoragesessionStoragecookie.
localStorage:
localstorage 的生命周期是永久的,存放数据大小一般为5MB,不参加和服务的通信,不能跨浏览器使用。应用场景:历史记录、登录
sessionStorage
seesionStorage 仅在当前会话下有效,关闭页面或者浏览器后被消除。存放数据大小一般为5MB, 不能参与于服务器的通信,不能跨浏览器使用。页面之间的传值,敏感账号的一次性登录。
cookie
cookies 数据存储在浏览器,单个cookie数据不能超过4k; cookie 的信息会在 http 请求的时候携带到服务器,可在request headers中查看,不能跨浏览器使用,应用场景,判断用户是否登录过网站,保存上次登录的时间等信息,浏览计数。
区别

  • localStorage:内存5Mb,始终有效,在所有同源窗口中都是共享的。
  • sessionStorage: 内存5MB, 仅在当前浏览器窗口关闭前有效,在不同的浏览器窗口不共享。
  • cookie:不超过4k,设置cookie的过期时间之前一直有效,在所有同源窗口中共享。

相同
这三者都是可以被利用来在浏览器端存储数据,而且都是字符类型的键值对。

二、Cookie介绍

1、cookie
cookie是按照域名来维系组织的,不同域名下有不同的Cookie, 每一个Cookie都是一个键值对
注意: Cookie 不是缓存,是持久化数据手段(保存在硬盘上), 缓存数据是用来提高访问速度的。
cookie的来源:cookie存在浏览器,来源于服务器。
在网页中我们看见的Cookie都是浏览器访问某个服务器后,服务器返回一个响应报文,在响应header中包含一个/多个Set-Cookie这样的资源(程序员在自己服务代码中写的),浏览器接到响应后,就将Set-Cookie这样的数据白存在浏览器本地。
当浏览器保存cookie后下次访问网站,就将Cookie放在header中返回给服务器,服务器就知道,还是之前的客户端。
在这里插入图片描述
2、Cookie的属性

属性 详情
name 一个域名下的name不能相同,相同则会被覆盖
value 由于cookie规定是名称/值是不允许包含分号,逗号,空格的
domain cookie绑定的域名,如果没有设置则自动绑定在当前执行语句的域,同一个域名下二级域名也是 不可以交换cookie的
expirse cookie的有效期, 现在被Max-Age取代,以秒为单位,如果为负数表述只在当前窗口有效,一旦关闭,cookie就消失
secure secure为true, cookie只会在https和ssl等安全写一下传输
httpOnly 不能通过javascrip获取用户的cookie

代码表示

document.cookie="username=mxr; expires=Thu, 18 Dec 2043 12:00:00 GMT; path=/&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值