0

我已经实现了一个将 url 缓存到文件系统(Android java)中的系统,以这种方式工作:

  • 给定一个 url,文件被下载到 /one_folder/hash(url).file

  • 该 url 的下一个请求首先检查文件是否存在。如果是,则返回文件,否则重复下载。

问题是,如果没有执行额外的逻辑并且更改了 url 处的文件,则永远不会检测到它(导致缓存总是成功)。

我该如何改进呢?是否有更好的系统可以为缓存文件分配到期日期并在到期时重新下载?

谢谢

4

1 回答 1

2

下载文件时,请检查 HTTP 标头。在那里你可能会找到缓存规则、内容过期日期等。

或者您可以发出 HEAD 请求而不是 GET 请求,并且只获取 http 标头(不是内容/文件)并比较上次修改或文件大小(内容长度)。

于 2012-05-01T22:17:37.423 回答