首页 > 其他分享 >localStorage、sessionStorage 和 cookies

localStorage、sessionStorage 和 cookies

时间:2024-08-28 16:26:54浏览次数:15  
标签:cookies sessionStorage 存储 localStorage key 数据

localStorage、sessionStorage 和 cookies 都是用于在浏览器中存储数据的方式。

localStorage

用途: 用于存储较大、较长期的数据,数据不会随浏览器关闭而消失,适合存储长期有效的信息,如用户设置、主题偏好等。

存储大小: 大约 5 MB左右。

有效期: 数据会一直保留,直到用户手动清除浏览器数据,或者通过 JavaScript 删除。

作用域: 同源的所有窗口和标签页共享同一个 localStorage。

用法:

// 设置数据
localStorage.setItem('key', 'value');

// 获取数据
const value = localStorage.getItem('key');

// 删除数据
localStorage.removeItem('key');

// 清除所有数据
localStorage.clear();

sessionStorage

用途: 用于存储临时数据,数据只在当前会话有效(浏览器窗口或标签页关闭后,数据就会丢失)。适合存储在页面刷新之间需要保留的信息,如表单数据、购物车状态等。

存储大小: 大约 5MB左右。

有效期: 仅在当前会话期间有效。关闭窗口或标签页后,数据被清除。

作用域: 仅限于同一窗口或标签页,同源的不同标签页或窗口不共享 sessionStorage。

用法:

// 设置数据
sessionStorage.setItem('key', 'value');

// 获取数据
const value = sessionStorage.getItem('key');

// 删除数据
sessionStorage.removeItem('key');

// 清除所有数据
sessionStorage.clear();

cookies

用途: 用于存储需要在客户端和服务器之间传递的小型数据。常用于会话管理、用户追踪、持久化状态等。Cookies 会随每个 HTTP 请求发送到服务器。

存储大小: 通常最多 4 KB。

有效期: 可以设置过期时间。默认情况下,浏览器关闭时会删除 session 类型的 Cookie;设置了 expires 或 max-age 的 Cookie 会在指定时间后过期。

作用域: 同源的所有窗口、标签页和服务器端共享。

用法:

// 设置 Cookie
document.cookie = "username=John; expires=Fri, 31 Dec 2024 23:59:59 GMT; path=/";

// 获取所有 Cookies
const cookies = document.cookie;

// 删除 Cookie (通过设置过期时间)
document.cookie = "username=John; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";

localStorage: 适合存储长期数据,如用户偏好设置、主题、缓存的 API 响应等。

sessionStorage: 适合存储短期数据,如会话中的表单数据、状态等。

cookies: 适合存储需要与服务器通信的小数据,如会话 ID、用户身份验证令牌等。

安全性

localStorage 和 sessionStorage 都只能在客户端访问,不会自动随请求发送到服务器,因此更适合存储不敏感的数据。

Cookies 可以与服务器共享,因此在存储敏感信息时,需要使用 Secure 和 HttpOnly 标志,并且通过 HTTPS 发送。

标签:cookies,sessionStorage,存储,localStorage,key,数据
From: https://blog.csdn.net/weixin_72288930/article/details/141643414

相关文章

  • localStorage、sessionStorage、Cookie的区别以及特点
    文章目录一、localStorage、sessionStorage、Cookie是什么?二、各自特点以及之间的区别1.`window.localStorage`2.`sessionStorage`3.`Cookie`三、写一个html页面以用来测试这三者不同的区别四、开始测试测试`localStorage`:测试`sessionStorage`:测试`Cookie`:总......
  • 前端数据持久化——Vuex+LocalStorage
    VuexVueX详解_组合式vuex-CSDN博客 LocalStorageLocalStorage是一种WebAPI,它允许网站在用户的本地浏览器中存储和检索数据,而不是将数据存储在服务器上。以下是LocalStorage的详细解析:一、LocalStorage的基本特点本地存储:LocalStorage存储的数据保存在用户的浏览器中,不......
  • LocalStorage 的使用方法
    LocalStorage是一种web端的存储机制,它使得由JavaScript编写的网站或者应用可以无限期的在浏览器中存储并访问数据。什么是无限期呢?就是说存储在浏览器中的数据是会一直存在的,及时浏览器被关闭了也不会消失。LocalStorage的使用方法要在你的web应用中使用LocalStorage,只......
  • Cookie、localStorage 和 sessionStorage 的区别及应用实例
    在前端开发中,持久化数据存储是一个非常常见的需求。为了实现这一点,浏览器提供了多种方式,包括Cookie、localStorage和sessionStorage。这三者各有优劣,适用于不同的场景1.CookieCookie是浏览器存储少量数据的一种机制,通常由服务器生成并发送到客户端。每次客户端向同一域名发......
  • Cookies设置和读取
    publicActionResultIndex(){#region写入CookiesHttpCookiecookie=newHttpCookie("CookieName");//初使化并设置Cookie的名称DateTimedt=DateTime.Now;//获取当前时间TimeSpants=newTimeSpan(0,0,......
  • 如何在Scrapy中下载根据Cookies url生成的文件
    我正在尝试下载一个文件,该文件的下载链接是根据某些Cookie生成的。我有一个PDF文件,显示在查看器中,该查看器有一个下载按钮当我单击此图标时,会根据HTML中的hidden_​​document_field_id输入值生成临时下载链接,因此本例中的临时下载链接是......
  • vue中sessionStorage的使用
    localStorage和sessionStorage属性允许在浏览器中存储key/value对的数据。sessionStorage用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。提示:如果你想在浏览器窗口关闭后还保留数据,可以使用localStorage属性,改数据对象没有过期时间,......
  • [二、状态管理]3管理应用拥有的状态(2)LocalStorage:页面级UI状态存储
    LocalStorage是页面级的UI状态存储,通过@Entry装饰器接收的参数可以在页面内共享同一个LocalStorage实例。LocalStorage也可以在UIAbility实例内,在页面间共享状态。本文仅介绍LocalStorage使用场景和相关的装饰器:@LocalStorageProp和@LocalStorageLink。说明本模块从APIver......
  • 关于localStorage你可能忽略掉的一些方法和属性
    localStorage是我们常用的浏览器API,用于在客户端进行持久化存储时非常方便。但你是否仅熟悉setItem()和getItem()两个基础方法?本文将介绍localStorage的一些不常见但非常实用的方法和属性。方法和属性setItem(key,value) –存储键值对getItem(key) –通过key获取......
  • LocalStorage封装
    前言localStorage 使用是一个老生常谈的话题,本文不讲解基础 api,主要教你如何封装一个优雅的localStorage 工具,以及一些 localStorage中一些你不知道的知识点。优雅的 Storage 工具类如何封装(支持前缀key、加密存储、过期时间,ts封装等)localStorage 真实存储大小......