Cookie 的 Expires 和 Max-Age 如何决定其是会话级还是持久级?
围绕“Cookie 的 Expires 和 Max-Age 如何决定其是会话级还是持久级”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较两者优先级和缺省行为。
浏览器 · 存储与离线数据面试题第 1 页,显示第 1–42 题,共找到 42 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
围绕“Cookie 的 Expires 和 Max-Age 如何决定其是会话级还是持久级”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须比较两者优先级和缺省行为。
本题说明 Cookie 三个安全属性各自的防御目标:HttpOnly 防脚本窃取、Secure 防明文传输窃听、SameSite 防跨站伪造请求,并给出真实配置场景与失效边界。
围绕“Cookie 的 Path 和 Domain 属性如何联合限定其作用域”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明子路径和子域发送规则及重复 Cookie 冲突。
围绕“Cookie 名字中的 __Host- 前缀有哪些约束”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明名称前缀覆盖 Secure/Path/Domain 条件。
围绕“SameSite=Lax 和 Strict 在实际导航中有什么不同”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分顶级导航与 iframe/子资源发送条件。
围绕“为什么 SameSite=None 必须配合 Secure 属性”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要解释现代浏览器强制要求。
围绕“Secure 属性在 localhost 或 HTTP 环境下如何使用”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要解释现代浏览器将 localhost 视为可信源。
围绕“Cookie 大小和数量的上限是多少”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答浏览器常见限制(4096 字节、约 20 个)。
围绕“Cookie 中 Domain= 属性是否包含点号前缀对子域访问有什么影响”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要解释遗漏 Domain 则仅为宿主域。
围绕“Cookie、localStorage 和 IndexedDB 分别适合存储什么类型的数据”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须基于数据大小、同步/异步、结构化程度给出选择决策。
围绕“Web Locks API 如何避免多个标签页同时修改 IndexedDB”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明通过锁获取协调,而不是简单使用 transaction。
围绕“如何用 BroadcastChannel 实现 localStorage 的跨标签页同步”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出监听 storage 事件之外的另一方案,并对比。
围绕“IndexedDB 中存储 Blob 和 ArrayBuffer 有什么不同”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确序列化复制与内存表现。
围绕“IndexedDB 事务成功的标志是 oncomplete、onsuccess 还是 onerror”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分事务级事件和请求级事件。
围绕“IndexedDB 如何创建复合索引并用其查询”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须使用索引数组作为 keyPath 并说明查询顺序。
围绕“什么时候应该用 IndexedDB 游标而不是直接用 get 或 index”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出范围扫描和分页场景。
围绕“IndexedDB 删除数据库时无法删除会触发什么错误”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须答出可能因连接未关闭而触发 blocked。
围绕“IndexedDB 中 getAll 和 getAllKeys 有什么区别”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确返回值包含值还是键。
围绕“IndexedDB 在某些隐私浏览模式下不可用,如何优雅降级”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出检测和备选内存存储方案。
围绕“IDBKeyRange 可以在哪些查询场景下使用”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出 between/only/outside 等边界查询,不覆盖游标方向。
围绕“IndexedDB 的主键和索引有什么区别”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要明确两者在查询和约束上的差别。
围绕“IndexedDB 中 autoIncrement 和 keyPath 能同时使用吗”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须给出可生成 key 但不作为 keyPath 的用法。
围绕“如何用 IndexedDB 实现对对象存储的增删改查”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须区分 add 和 put 的不同。
围绕“IndexedDB 中如何按条件批量删除旧数据”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须使用游标遍历并调用 delete。
围绕“如何将 IndexedDB 的请求式 API 封装成 Promise 形式”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕必须描述转换 IDBRequest 事件为 resolve/reject 的方法,不实现完整库。
围绕“IndexedDB 支持存储哪些类型的数据”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须列出 structured clone 支持范围(Blob、ArrayBuffer、对象等)及不支持的(函数、Symbol),不深入。
本文解释 IndexedDB 事务原子性的机制、触发回滚的条件和工程边界。明确任一操作失败默认回滚所有变更,但错误处理可阻止回滚,版本变更和崩溃场景需单独考虑。
围绕“IndexedDB 中 readwrite 和 versionchange 事务的作用域有什么不同”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须指出 versionchange 不受其他连接影响,readwrite 只在部分对象存储上。
围绕“IndexedDB 版本变更流程中 onupgradeneeded 的作用是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答要聚焦于如何定义对象存储结构和迁移。
围绕“localStorage 存储中 JSON 序列化和深层嵌套有什么问题”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讨论性能与数据大小边界,以及备用方案。
围绕“在浏览器隐身模式下 localStorage 可能遇到什么限制”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须讨论写入可能被拒绝或配额为 0。
围绕“localStorage 的 setItem、getItem 和 removeItem 与直接属性赋值有什么差别”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明同名属性和保留字的问题。
围绕“为什么收到 storage 事件后获取 localStorage 可能不是最新值”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要解释事件异步引起竞争。
围绕“为什么 localStorage 的同步读写会阻塞主线程”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要解释同进程访问磁盘/数据库导致 JS 线程等待。
围绕“如何向浏览器申请永久性存储(persistent storage)”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明 persist() 的调用和用户授权与自动授予条件。
围绕“如何检测浏览器当前可用存储空间和已用配额”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答需要围绕用 Storage API 的 estimate() 返回 usage 和 quota。
围绕“当浏览器存储配额超限时,IndexedDB 会抛出什么错误”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须指出错误类型和监听 onabort/onerror。
本文解释sessionStorage生命周期与标签页的关系:刷新保留数据,关闭标签页清除;新标签页默认独立,window.open或复制标签页可继承初始快照。区分复制、新开、刷新三种操作对sessionStorage的具体影响并给出工程判断。
围绕“Storage Buckets API 能解决哪些存储配额管理问题”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖需要说明创建多个桶并为每个设置配额。
本题解释 storage 事件不触发原因:其设定是通知其他同源文档,改动页面自身不接收;同时说明 localStorage 和 sessionStorage 的事件范围差异,以及实现跨页同步时的注意事项。
围绕“浏览器对第三方 iframe 的 localStorage 和 Cookie 如何分区”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖回答访问可能被阻止或返回空,不深入特定浏览器策略。
围绕“当 localStorage 被清除时,storage 事件的 key 属性是什么”给出直接结论、机制拆解、可复现验证、常见误区与追问,重点覆盖必须明确整个 clear() 会触发 key 为 null 的事件。