请找出强制缓存和协商缓存的例子,抓取报文关键信息,贴图展示
时间: 2024-06-10 09:07:23 浏览: 149
对于您的问题,我可以回答。强制缓存和协商缓存是常见的缓存策略。强制缓存是指在缓存未过期之前,直接使用缓存的资源,而不去服务器请求新的资源。协商缓存则是在缓存未过期之前,向服务器发送一个请求,如果服务器上的资源没有改变,服务器会返回304状态码,通知浏览器使用本地缓存,否则服务器会返回200状态码,返回新的资源给浏览器。
以下是一个强制缓存的示例,我们可以在Chrome开发者工具的Network选项卡中查看HTTP请求的响应头:
![强制缓存](https://img-blog.csdn.net/20180710154712885?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhY2thZ2VfYmxvZy5wbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/90)
我们可以看到,第一次请求这个资源时,服务器返回了200状态码,并发送了Last-Modified和Expires两个响应头,用于告诉浏览器何时可以使用缓存。当我们刷新页面时,浏览器会直接使用缓存的资源,不再向服务器请求。
以下是一个协商缓存的示例,我们可以在Chrome开发者工具的Network选项卡中查看HTTP请求的响应头:
![协商缓存](https://img-blog.csdn.net/20180710154839422?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhY2thZ2VfYmxvZy5wbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/90)
我们可以看到,第一次请求这个资源时,服务器返回了200状态码,并发送了ETag响应头,用于标识资源的版本号。当我们再次请求这个资源时,浏览器会先向服务器发送一个请求,包含If-None-Match请求头,用于将之前的ETag值发送给服务器。如果服务器上的文件未改变,则返回304状态码,浏览器直接使用缓存;否则服务器返回200状态码,返回新的资源给浏览器。
以上就是强制缓存和协商缓存的例子以及抓取HTTP请求的关键信息和贴图展示。
阅读全文