cookie、localStorage 和SessionStorage的区别和特点?

简介: cookie、localStorage 和SessionStorage的区别和特点?

区别和特点

  • Cookie:存储在客户端的小型文本文件,可以跨会话保留数据。每个Cookie的大小有限制(通常为几KB),可用于在浏览器和服务器之间传递信息。
  • LocalStorage:长期存储在客户端的数据,不会随着会话结束而消失。每个域名的LocalStorage大小有限制(通常为几MB)。
  • SessionStorage:只在当前会话中有效,当会话结束时数据将被清除。每个会话的SessionStorage大小有限制(通常与LocalStorage相似)。


作用


  • Cookie:用于在客户端和服务器之间传递数据,例如身份验证凭据、用户偏好设置等。
  • LocalStorage:用于长期存储在客户端的数据,比如本地缓存、用户配置信息等。
  • SessionStorage:用于临时存储在客户端的数据,通常在会话期间保持一致性,但在关闭页面或浏览器时被清除。

使用情况

  • Cookie:可用于跟踪用户会话、存储用户偏好设置等。例如,在网站上保持用户登录状态。
  • LocalStorage:可用于存储较大量的数据,以便在客户端进行快速访问。例如,在Web应用程序中存储用户的浏览历史记录。
  • SessionStorage:适合在会话期间需要临时保存数据的情况。例如,在购物网站中暂时保存用户的购物车信息。


当我们想要在网页上存储数据时,可以使用以下示例代码来演示cookie、localStorage和sessionStorage的用法:

  • Cookie:使用JavaScript设置和读取cookie
// 设置cookie
document.cookie = "username=John Doe; expires=Thu, 18 Dec 2023 12:00:00 UTC; path=/";
 
// 读取cookie
let cookieValue = document.cookie;
console.log(cookieValue);
  • LocalStorage:使用JavaScript操作localStorage
// 设置LocalStorage
localStorage.setItem('username', 'John Doe');
 
// 读取LocalStorage
let storedUsername = localStorage.getItem('username');
console.log(storedUsername);
  • SessionStorage:使用JavaScript操作sessionStorage
// 设置SessionStorage
sessionStorage.setItem('username', 'John Doe');
 
// 读取SessionStorage
let storedUsername = sessionStorage.getItem('username');
console.log(storedUsername);

这些示例代码展示了如何使用JavaScript来设置、读取和删除cookie、localStorage和sessionStorage中的数据。这些存储机制在不同的场景下有不同的应用,可以根据需求选择合适的存储方式。








相关文章
|
10天前
|
存储 安全 数据安全/隐私保护
Cookie 和 Session 的区别及使用 Session 进行身份验证的方法
【10月更文挑战第12天】总之,Cookie 和 Session 各有特点,在不同的场景中发挥着不同的作用。使用 Session 进行身份验证是常见的做法,通过合理的设计和管理,可以确保用户身份的安全和可靠验证。
12 1
|
18天前
|
存储 JavaScript 前端开发
vuex和localstorage . cookie的区别
【10月更文挑战第8天】
41 1
|
24天前
|
存储 缓存 JavaScript
cookie和localStorage的区别特点
cookie和localStorage的区别特点
64 0
|
2月前
|
存储 编解码 JSON
解决浏览器存储问题,不得不了解的cookie、localStorage和sessionStorage
该文章详细对比了浏览器存储机制中的cookie、localStorage和sessionStorage的不同之处,以及各自的适用场景。
|
3月前
|
存储 缓存 JavaScript
cookie和localStorage的区别特点
cookie和localStorage的区别特点
42 0
|
27天前
|
缓存 Java Spring
servlet和SpringBoot两种方式分别获取Cookie和Session方式比较(带源码) —— 图文并茂 两种方式获取Header
文章比较了在Servlet和Spring Boot中获取Cookie、Session和Header的方法,并提供了相应的代码实例,展示了两种方式在实际应用中的异同。
104 3
servlet和SpringBoot两种方式分别获取Cookie和Session方式比较(带源码) —— 图文并茂 两种方式获取Header
|
2月前
|
存储 缓存 数据处理
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
本文介绍了PHP会话控制及Web常用的预定义变量,包括`$_REQUEST`、`$_SERVER`、`$_COOKIE`和`$_SESSION`的用法和示例。涵盖了cookie的创建、使用、删除以及session的工作原理和使用,并通过图书上传的例子演示了session在实际应用中的使用。
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
|
2月前
|
存储 前端开发 Java
JavaWeb基础7——会话技术Cookie&Session
会话技术、Cookie的发送和获取、存活时间、Session钝化与活化、销毁、用户登录注册“记住我”和“验证码”案例
JavaWeb基础7——会话技术Cookie&Session
|
2月前
|
存储 安全 NoSQL
Cookie、Session、Token 解析
Cookie、Session、Token 解析
49 0
|
2月前
|
存储 JSON 数据安全/隐私保护
Cookie + Session 的时代已经过去了?
在探讨“Cookie + Session”这一经典组合是否已经过时的议题时,我们首先需要理解它们在Web应用认证和会话管理中的历史地位与当前面临的挑战。随着Web技术的飞速发展,特别是无状态服务、OAuth、JWT(JSON Web Tokens)等技术的兴起,这一传统机制确实面临了前所未有的变革压力。但说它“完全过去”或许过于绝对,因为它在特定场景下仍发挥着重要作用。
33 0