一、Cache-Control的可缓存性
- public:在HTTP请求返回的内容经过的所有路径中,都可以对返回内容进行一个缓存的操作。
- private:只有发起请求的浏览器才可以进行缓存
- no-cache:可以在本地进行缓存,但是每次发起请求都需要到服务器去验证一下,如果服务器返回告诉你可以使用本地缓存,你才可以去使用本地的缓存。
二、Cache-Control到期(混村什么时间到期)
- max-age=<seconds>:缓存多少秒之后才会过期。
- s-maxage=<seconds>:它会替代max-age,但是只有在 代理服务器中才会起作用。
- max-stale=<seonds>:当我们缓存过期以后,如果有max-stale,只要在max-stale这个时间之内,还会使用过期的缓存。只有在发起端设置才有用,在服务端设置没有用。
三、Cache-Control重新验证
must-revalidate:如果我们的和缓存过期了,我们必须重新发送到源服务端,重新获取这部分数据,来验证这部分数据是否真的过期了
proxy-revalidate:用在缓存服务器中,缓存过期后,必须要去源服务器上重新请求一次,而不能使用本地的缓存
四、其他
- no-store:本地不可进行缓存的,每次发起请求,都需要去服务端去拿去数据。
- no-transform:用在proxy服务器上,告诉服务器不要随意改动返回的额内容。
五、测试
我们修改ser