RESTful Web 服务 - 缓存



缓存指的是将服务器响应存储在客户端本身,这样客户端就不需要反复向服务器请求相同的资源。服务器响应应该包含有关如何执行缓存的信息,以便客户端可以缓存响应一段时间或永远不缓存服务器响应。

以下是服务器响应中可以包含的用于配置客户端缓存的标头:

序号 标头及描述

1

Date

资源创建的日期和时间。

2

Last Modified

资源上次修改的日期和时间。

3

Cache-Control

控制缓存的主要标头。

4

Expires

缓存的过期日期和时间。

5

Age

从服务器获取资源开始算起的持续时间(以秒为单位)。

Cache-Control 标头

以下是 Cache-Control 标头的详细信息:

序号 指令及描述

1

Public

指示任何组件都可以缓存资源。

2

Private

指示只有客户端和服务器可以缓存资源,任何中间代理都不能缓存资源。

3

no-cache/no-store

指示资源不可缓存。

4

max-age

指示缓存有效期最长为 max-age 秒。之后,客户端必须发出另一个请求。

5

must-revalidate

指示服务器在 max-age 过期后重新验证资源。

最佳实践

  • 始终使静态内容(如图像、CSS、JavaScript)可缓存,并设置 2 到 3 天的过期日期。

  • 不要设置过高的过期日期。

  • 动态内容应仅缓存几个小时。

Best practices for Cache-Control
广告

© . All rights reserved.