当前位置: 首页 > news >正文

前端域名、端口、协议一样,本地缓存可以共享吗?

是的,前端在域名、端口、协议都相同的情况下,本地缓存(localStorage、sessionStorage、cookie 等)是可以共享的,具体如下:


✅ 本地缓存能否共享的判断标准:

缓存类型是否共享的条件
localStorage协议 + 域名 + 端口完全一致时可共享
sessionStorage只在当前标签页或 iframe 会话中共享
Cookie取决于 domainpath,协议端口也需一致
IndexedDB也依赖于同源策略(协议、域名、端口都一致)

举个例子:

如果你访问:

  • http://localhost:3000/app1

  • http://localhost:3000/app2

这两个页面:

  • 都是 http

  • 都是 localhost

  • 都是 3000 端口

✅ 那么它们的 localStoragecookie 是可以共享的。
❌ 但 sessionStorage 是不共享的,除非它们在同一个标签页或 iframe 中打开。


注意:

如果其中任一项不同,例如:

  • 协议不同(http vs https)

  • 域名不同(localhost vs 127.0.0.1)

  • 端口不同(3000 vs 3001)

➡️ 就会构成跨源(Cross-Origin),缓存就无法共享


如果你想共享缓存,但域名或端口不同,可以考虑以下解决方案:

  1. 使用统一的反向代理(如 Nginx)统一域名和端口。

  2. 使用跨窗口通信(如 postMessage)传递数据。

  3. 设置跨子域的 Cookie(设置 document.domain 或使用 SameSite 配置)。

需要具体应用场景我可以进一步建议方案。你当前是否在做多页面/多系统共享缓存的需求?

http://www.xdnf.cn/news/671635.html

相关文章:

  • 【b站计算机拓荒者】【2025】微信小程序开发教程 - chapter3 项目实践 - 2信息采集
  • Protocol Buffers 复杂嵌套编译指南:生成 C++ 代码
  • JavaScript- 3.2 JavaScript实现不同显示器尺寸的响应式主题和页面
  • 开源酷炫大数据可视化大屏html+eacher 100+套
  • 力扣热题——分类求和并作差
  • Vue-02 (使用不同的 Vue CLI 插件)
  • 从 PyTorch 到 TensorFlow Lite:模型训练与推理
  • 【华为云物联网】iOtDA数据以表格字段转发OBS的设置攻略,便于以后数据上大屏
  • 如何描述BUG
  • VUE项目部署IIS服务器手册
  • 机器学习笔记【Week6】
  • 打板策略实战对比,khQuant回测横评第三弹【AI量化第29篇】
  • Nginx 在四大核心场景中的应用实践与优化
  • 深入解析 Flink 中的时间与窗口机制
  • 安卓证书的申请(保姆级图文)
  • Python服务器请求转发服务
  • KT6368A通过蓝牙芯片获取手机时间详细说明,对应串口指令举例
  • ubuntu中,c和c+程序,预编译、编译、链接和运行命令
  • 交换机 路由器
  • 2025 年江西研究生数学建模竞赛题A题电动汽车充电桩共享优化与电网安全协同模型完整思路 模型代码 结果 成品分享
  • 模板应用更新同步到所有开发中的应用
  • 思澈LCD-kit测试过程记录
  • 跳表(Skip List)查找算法详解
  • 2024年12月英语六级(第二套)真题+解析全24页
  • MySQL-5.7 修改密码和连接访问权限
  • 基于Python爬虫技术的对歌曲评论数据可视化分析系统
  • LabVIEW比例阀性能测试试验台
  • 【Python】日期计算和自动化运行脚本
  • 网站资源加载出现401错误
  • 用户配置文件(Profile)