Cache-Control: max-age=0 with stale-while-revalidate 值?

Cache-Control: max-age=0 with stale-while-revalidate value?

如果 max-age 为零但 stale-while-revalidate 有值会怎样?

示例:Cache-Control: max-age=0, stale-while-revalidate=60

是否会考虑 stale-while-revalidate?还是数据每次都会命中原点?

每次都会向源站发送一个请求

stale-while-revalidate 允许客户端使用过时的响应——当它重新验证来源时——如果响应的年龄小于 max-age + stale-while-revalidate.


这是一个使用 Cache-Control: max-age=0, stale-while-revalidate=60 的场景:

用户登陆页面然后刷新页面。

响应立即过时,因为 max-age=0 但它的 age 在 still-usable window 的时间范围内(即 max-age + stale-while-revalidate)。

客户端加载过时的响应并向源发送请求以重新验证它。