[go: up one dir, main page]

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

http 缓存 header 中的 Date 与 Last-Modified 有什么不同【热度: 276】 #967

Open
yanlele opened this issue Oct 7, 2024 · 0 comments
Labels
Shopee 公司标签 web应用场景 应用场景类问题 网络 web 网络相关
Milestone

Comments

@yanlele
Copy link
Member
yanlele commented Oct 7, 2024

关键词:http 缓存 header

在 HTTP 响应头中,DateLast-Modified有以下不同:

一、含义不同

  • Date:表示消息产生的时间。服务器用这个时间来标记响应报文的生成时间,它反映了服务器生成响应的时刻。例如,“Mon, 07 Oct 2024 12:34:56 GMT”,这个时间是服务器根据其自身的时钟生成的。
  • Last-Modified:指示资源的最后修改时间。它表示服务器上该资源最后被修改的时间。比如,一个网页文件最后一次被编辑的时间就可以通过这个字段告知客户端。例如,“Mon, 01 Sep 2024 10:20:30 GMT”。

二、用途不同

  • Date
    • 客户端可以根据这个时间来判断响应的新鲜度。例如,如果客户端本地有缓存,它可以通过比较缓存的时间和响应中的Date来确定是否需要使用缓存。
    • 用于计算响应的年龄等缓存相关的参数。
  • Last-Modified
    • 主要用于缓存控制。客户端在后续的请求中可以通过If-Modified-Since请求头将这个时间发送给服务器,询问服务器资源是否在这个时间之后被修改过。如果没有被修改,服务器可以返回一个状态码为 304(Not Modified)的响应,告知客户端可以使用缓存中的资源,从而减少传输的数据量和提高响应速度。
    • 有助于客户端判断资源是否已经过期,以便决定是否需要重新获取资源。

综上所述,Date主要表示响应的生成时间,而Last-Modified表示资源的最后修改时间,它们在 HTTP 通信中起着不同的作用,共同为缓存控制和资源管理提供重要信息。

@yanlele yanlele added Shopee 公司标签 web应用场景 应用场景类问题 网络 web 网络相关 labels Oct 7, 2024
@yanlele yanlele added this to the milestone Oct 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Shopee 公司标签 web应用场景 应用场景类问题 网络 web 网络相关
Projects
None yet
Development

No branches or pull requests

1 participant