HTTP 缓存
通过网络获取内容既缓慢,成本又高:大的响应需要在客户端和服务器之间进行多次往返通信,这拖延了浏览器可以使用和处理内容的时间,同时也增加了访问者的数据成本。因此,缓存和重用以前获取的资源的能力成为优化性能很关键的一个方面。 Contents 使用 ETag 验证缓存的响应 Cache-Control 定义最优 Cache-Control 策略 废弃和更新已缓存的响应 缓存检查表 好消息是每个浏览器都实现了 HTTP 缓存! 我们所要做的就是,确保每个服务器响应都提供正确的 HTTP 头指令,以指导浏览器何时可以缓存响应以及可以缓存多久。 如果在应用中使用 Webview 来获取和显示网页内容,可能需要提供额外的配置标志,以确保启用了 HTTP 缓存,并根据用途设置了合理的缓存大小,同时,确保缓存持久化。查看平台文档并确认您的设置! 服务器在返回响应时,还会发出一组 HTTP 头,用来描述内容类型、长度、缓存指令、验证令牌等。例如,在上图的交互中,服务器返回了一个 1024 字节的响应,指导客户端缓存响应长达 120 秒,并提供验证令牌( x234dff ),在响应过期之后,可以用来验证资源是否被修改。 使用 ETag 验证缓存的响应 TL;DR 服务器通过 ETag HTTP 头传递验证令牌 通过验证令牌可以进行高效的资源更新检查:如果资源未更改,则不会传输任何数据。