上一篇文章介紹的是《浏覽器緩存機制》,浏覽器緩存是浏覽器保存數據用于快速讀取或避免請求重複資源,提升網頁加載速度。緩存的數據到底放哪了呢?作為開發者,有時也需要檢查一下緩存中的内容。所以介紹下緩存方法以及緩存内容在哪查找?
1、http 緩存
http緩存是存在于服務器與浏覽器之間,是一種保存資源副本并在下次請求時直接使用該副本的技術。web緩存發現請求資源已經被存儲,它會攔截請求,返回資源副本,而不會去服務器重新請求資源。
具體的緩存設置,如何判斷是否有緩存?等,上一篇文章以詳細介紹,可點擊《浏覽器緩存機制》查看。
打開浏覽器調試模式,在 Application 右側就會有浏覽器的 8 種緩存方式,具體如下:
2、websql
websql是較新的chrome浏覽器支持,并以獨立規範形式出現,引入了一組使用 SQL 操作客戶端數據庫的 APIs。websql主要特點:
websql常用的API如下:
openDatabase - 打開已存在的數據庫,如果不存在,則會新建一個新的數據庫。
transaction - 控制一個事物,以及這種情況執行提交或者回滾。
executeSql - 執行 SQL 語句。
3、indexDB
indexDB 是為了能夠在客戶端存儲客觀數量的結構化數據,并且在這些數據上使用索引進行高性能的檢索。DOM存儲對于少量數據是非常友好的,但不适合存儲大量結構化數據,indexDB就是為了解決這個問題而生的。
indexDB 分别為同步和異步訪問提供了單獨的API,同步API本打算供Web Worker内部使用,但目前還未實現。異步API在Web Worker内部和外部都可以使用,另外浏覽器對indexDB有50M大小限制。
indexDB主要特點有:
4、cookie
cookie指的就是會話跟蹤技術。一般指網站為了辨别用戶身份,進行session跟蹤而而存儲在用戶本地終端上的數據,cookie一般通過http請求頭發送到服務器。cookie主要特點有:
cookie常用操作:
setMaxAge - 設置cookie的有效期,時間單位是秒,負值時表示關閉浏覽器後就失效,默認值為-1。
setDomain - 用于指定,隻有請求指定域名才會帶上該cookie。
setPath - 隻有訪問該域名下的cookieDemo的這個路徑地址才會帶cookie。
setValue - 重置 value 。
5、localstorage
localStorage 是HTML5的一種新的本地緩存方案,目前使用比較多,一般存儲ajax返回的數據,存儲特點主要有:
localStroage常用API如下:
localStorage.setItem(key,value) //保存數據
localStorage.getItem(key) // 獲取數據
localStorage.removeItem(key) // 删除單個數據
localStorage.clear() // 删除全部
6、sessionstorage
sessionStorage與上述localStroage類似,它的特點主要有:
sessionStorage常用API如下:
sessionStorage.setItem(key,value) //保存數據
sessionStorage.getItem(key) // 獲取數據
sessionStorage.removeItem(key) // 删除單個數據
sessionStorage.clear() // 删除全部
7、application cache
application cache是離線緩存技術,将大部分的圖片、js、css等資源放在mainfest文件配置中,頁面打開時通過mainfest文件讀取本地文件或請求服務器資源。通常用于靜态頁面的緩存。
application cache特點:
8、cacheStorage
cacheStorage 表示 cache對象的存儲。該接口提供 serviceWorker 或其他類型的工作線程或window範圍訪問的所有命名緩存的主目錄。
CacheStorage常見方法:
9、flash緩存
flash緩存也是頁面通過js調用flash讀寫特定的磁盤目錄,達到本地數據緩存的目的。這是要基于flash的,所以基本不用。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!