tft每日頭條

 > 生活

 > 前端浏覽器緩存對程序的影響

前端浏覽器緩存對程序的影響

生活 更新时间:2025-02-03 03:55:23

#2021加油帶頭人#昨天我們介紹了ETag。

浏覽器會緩存Nginx返回的ETag值。今天我們來學習另一個浏覽器緩存相關的header。

前端浏覽器緩存對程序的影響(浏覽器與緩存相關的另一個重要的header)1

當浏覽器通過時間認為緩存已經過期了,這個時候浏覽器被再次請求的時候,就會去Nginx問一下是否内容有修改過,如果内容沒有修改過,就返回304那麼内容就不用返回了。這樣就節省了帶寬資源。

那麼Nginx是如何快速判斷該資源是否被修改過呢?

浏覽器會通過If-None-Match頭部填入ETag的值。

這樣Nginx在收到請求後會用ETag的值和If-None-Match裡的值進行比較。

當2個值想匹配的時候就會直接返回304.

前端浏覽器緩存對程序的影響(浏覽器與緩存相關的另一個重要的header)2

當沒有帶If-None-Match頭部,或者If-None-Match頭部的值與ETag不匹配的時候返回200和資源

前端浏覽器緩存對程序的影響(浏覽器與緩存相關的另一個重要的header)3

需要注意的是:服務器端在生成狀态碼為304的響應的時候,必須同時生成以下會存在于對應的200響應中的頭部:Cache-Control,Content-Location,Date,ETag,Expires和Vary。

說到304,最近有個哥們面試還問到了http狀态碼 301 302 304呢。

現在大家應該對這個304的使用場景,及作用比較清晰了。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved