检查一个URL中的更新而不下载整个文件

时间:2012-05-01 22:12:04

标签: java android caching

我已经以这种方式实现了一个缓存url系统进入文件系统(Android java):

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

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

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

我该如何改进?是否有更好的系统为缓存文件指定过期日期并在过期时重新下载?

由于

1 个答案:

答案 0 :(得分:2)

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

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