rest - 在 RESTful API 上使用 Last-Modified 和 If-Modified-Since

标签 rest http last-modified if-modified-since

我一直在阅读一些有关从服务器发送响应时设置 Last-Modified header 的文章。我了解它的用途以及如何设置等。

我还了解传入的 If-Modified-Since header ,并且它询问自此时以来是否发生了任何更改。我了解如何检索 header 并将其转换为时间戳等。

我正在努力解决的问题是我将自时间戳以来的修改后的内容进行比较。我的理解是,通过使用上次修改,我不需要我的 API 来继续检索大量数据(如果它仍然相同)。

那么,我是否应该对 API 的缓存/数据库进行超轻量级调用,然后检查对所请求的任何数据集的最后修改?

最佳答案

这将取决于所请求资源的性质,但我认为您会希望尽可能利用 Web 服务器的缓存机制本身。例如,如果您使用 Apache,mod_cache应该是 your HTTP caching needs 的起点。我会尝试避免手动实现完整的缓存头实现,因为您可能会错过一些东西,例如无意中向您的应用程序引入安全风险。

关于rest - 在 RESTful API 上使用 Last-Modified 和 If-Modified-Since,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19941017/

相关文章:

ruby - 如何模拟 Net::HTTP::Post?

php - 哪一个使用 : Expire Header, Last Modified Header 或 ETags

C 使用 CURL 获取文件

Python 3,尝试登录facebook并获取源代码

从 FTP 服务器检索文件的修改日期时间

python - 我可以从打开读取的文件中获取文件修改时间吗(python)

c# - WCF Restful返回HttpResponseMessage想在设置内容时进行协商

java - 如何在未启用日志记录功能的情况下在 Out 拦截器中获取 http 响应正文?

android - 分块流式传输不符合预期 Retrofit+RxJava

web-services - RESTful URL 设计 : public vs private API, 层次结构 API 设计模式,URI 与 URL 设计?