为什么认为覆盖缓存控制 headers 是危险的?
Why is it considered dangerous to overwrite cache control headers?
我正在使用 Retrofit/OkHTTP 来使用不提供适当缓存 headers 的 REST API。为了解决这个问题,我编写了一个缓存拦截器,它将缓存控制 headers 添加到响应中。
我在多个地方看到这被认为是危险的,例如 okhttp 配方有以下评论:
/** Dangerous interceptor that rewrites the server's cache-control header. */
(source)
为什么这被认为是危险的?我想了解这样做的风险。
您正在客户端上做出本应在服务器上做出的决定。风险是客户端最终缓存了它不应该缓存的内容,这将导致返回过时的数据。
我正在使用 Retrofit/OkHTTP 来使用不提供适当缓存 headers 的 REST API。为了解决这个问题,我编写了一个缓存拦截器,它将缓存控制 headers 添加到响应中。
我在多个地方看到这被认为是危险的,例如 okhttp 配方有以下评论:
/** Dangerous interceptor that rewrites the server's cache-control header. */
(source)
为什么这被认为是危险的?我想了解这样做的风险。
您正在客户端上做出本应在服务器上做出的决定。风险是客户端最终缓存了它不应该缓存的内容,这将导致返回过时的数据。