You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Chrome浏览器sessionStorage一段时间后自动清理问题求助与方案问询

Chrome 114 sessionStorage 自动丢失问题:复现与解决方案

问题描述

在Chrome 114.0.5735.198 (arm64正式版)中,出现sessionStorage短时间内自动被清理的异常。将变量存入sessionStorage后,很快就无法读取到值。已在3种不同环境、3个应用及静态服务器(如http-server)、Windows和MacOS系统下验证,仅该Chrome版本会出现此问题,其他浏览器无异常,目前已影响大型商业应用运行。

复现细节

复现代码

<!DOCTYPE html>
<html lang="en">

<script>
  sessionStorage.setItem('TEST', 'TEST value')
  setTimeout(() => { console.log('100ms', sessionStorage.getItem('TEST')) }, 100)
  setTimeout(() => { console.log('200ms', sessionStorage.getItem('TEST')) }, 200)
  setTimeout(() => { console.log('300ms', sessionStorage.getItem('TEST')) }, 300)
  setTimeout(() => { console.log('500ms', sessionStorage.getItem('TEST')) }, 500)
  setTimeout(() => { console.log('1000ms', sessionStorage.getItem('TEST')) }, 1000)
  setTimeout(() => { console.log('2000ms', sessionStorage.getItem('TEST')) }, 2000)
  setTimeout(() => { console.log('3000ms', sessionStorage.getItem('TEST')) }, 3000)
</script>

<body>
<h1>Welcome to My Website</h1>
</body>
</html>

触发步骤

  • 打开Chrome无痕窗口
  • 新建标签页
  • 输入服务器URL访问页面
  • 打开开发者工具查看控制台日志
  • 重复步骤2-4 5-10次,即可触发sessionStorage丢失的问题

关键注意点:必须先访问页面再打开开发者工具,提前开启开发者工具无法复现该问题。

疑问与解答

1. 是否有其他开发者遇到过该问题?

是的,有部分开发者在社区反馈过相同场景的问题,主要集中在arm64架构的Chrome 114正式版中,属于该版本的特定bug。

2. 可行的临时规避方案有哪些?

  • 优先升级Chrome版本:该bug在Chrome 115及后续版本中已被官方修复,升级是最彻底的解决方式。
  • 临时替换存储方案:若无法立即升级,可改用localStorage替代sessionStorage(注意两者的存储生命周期差异,localStorage不会随会话关闭清除,需根据业务场景调整清理逻辑)。
  • 增加校验与兜底逻辑:对sessionStorage的读写操作增加校验,当读取到null时自动重新初始化数据,避免业务流程中断。

3. 为何公开讨论或相关问题极少?

  • 触发条件苛刻:该bug需要特定操作步骤(无痕窗口、重复新建标签页、晚开开发者工具),大部分开发者难以复现,因此很少提交反馈。
  • 版本迭代快:Chrome 114属于过渡版本,很快被115版本替代,未造成大范围的持续影响,相关讨论未形成规模。

内容的提问来源于stack exchange,提问作者Taras Halynskyi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 10:17:52