测试往返缓存

索菲亚·埃梅利安诺娃
Sofia Emelianova

本指南介绍如何使用 Chrome 开发者工具执行以下操作:

  • 测试您是否针对使用浏览器的后退和前进按钮时实现了即时加载而优化了网页。
  • 找出可能导致网页无法进行此类缓存的问题。

往返缓存(也称 bfcache)是一项浏览器优化技术,能实现即时的往返导航。如需了解详情,请参阅往返缓存

测试往返缓存

如需测试往返缓存,请按以下步骤操作:

  1. 在您的页面上,打开开发者工具,然后依次转到应用 > 后台服务 > 往返缓存

    往返缓存标签页。

  2. 点击测试往返缓存

    Chrome 会自动将您转到 chrome://terms/ 并返回您的网页。

    或者,您也可以点击浏览器的后退和前进按钮。

如果往返缓存可以正常发挥作用,那么您会看到以下消息:

从往返缓存中成功传送。

否则,您会看到问题列表。

如需了解哪些问题会影响哪些帧,请展开 Frames “展开”图标。 部分。

已展开的“帧”部分。

解决会阻止缓存的问题

如果您的网页不符合往返缓存的条件,则往返缓存标签页会显示包含 3 种原因的列表:

无法储存至往返缓存。

  • 可操作。您可以修复这些问题以启用缓存。例如,停止使用 unload 事件
  • 待提供支持。Chrome 尚不支持这些功能,因此它们会阻止缓存。不过,Chrome 一旦支持此功能,便会解除这些限制。
  • 不可操作。您无法在此页面上解决这些问题。网页控制范围之外的因素会阻止缓存。

如需查找哪个帧造成了阻碍,请展开问题说明下方的相应部分。

阻塞帧。

导致往返缓存的常见问题

导致 bfcache 无法运行的两个主要原因包括:

  • Cache-Control: no-store 标头

    建议对包含个人信息和私密信息的网页使用此标头值。对于您想要合理更新的网页,请使用 no-cache 或较短的缓存时间,例如 max-age=60

  • 卸载处理程序有问题

    Chrome 计划弃用卸载处理程序,并建议切勿使用 unload 事件。

    为确保您的网站未使用卸载处理程序,例如防止扩展程序添加 unload 事件,请声明 Permissions-Policy: unload=() HTTP 响应标头。