Skip to content

HTTP 缓存、Storage 与 IndexedDB:练习答案 ​

localStorage/sessionStorage 边界 ​

localStorage 跨标签页持久化,sessionStorage 按标签页隔离;两者都只能保存字符串。读出后先解析版本并捕获损坏 JSON,退出登录时按用户前缀删除。不要存放长期 token、密码或未经校验的 HTML。

HTTP Cache-Control 与 ETag ​

Cache-Control: max-age=60 允许新鲜期内复用;过期后带 If-None-Match 请求,服务端返回 304 时复用旧响应体。答案应在 DevTools 中记录第一次 200、第二次 304 或命中缓存的差异,而不是只看页面文本。

IndexedDB 请求与事务 ​

在 onupgradeneeded 建 store,在 readwrite 事务中写入;最终成功以 tx.oncomplete 为准,request 的 success 只表示该请求完成。事务 abort 时不应留下部分写入。订单等服务器权威数据应保存版本和时间戳,离线缓存不能直接当最终真相。

章节入口核对 ​

以下入口对应本章概览或综合练习,答案核对沿用本章各知识点的实现与日志。

用心记录每一步成长