--- title: storage slug: Mozilla/Add-ons/WebExtensions/API/storage tags: - API - 擴充套件 translation_of: Mozilla/Add-ons/WebExtensions/API/storage ---
{{AddonSidebar}}

讓套件可以存讀資料以及監聽儲存項目的更動。

儲存系統基於 Web Storage API,有一些不同,包括:

要使用這個 API 你必須在 manifest.json 裡面加入 "storage" 的權限

每個套件都有自己的儲存空間,它們可以被切分爲不同種類的儲存。

雖然這個 API 與{{domxref("Window.localStorage")}}很相似,建議你不要在套件裡使用 Window.localStorage 儲存套件相關資料。Firefox 在用戶由於隱私問題清除歷史記錄與資料時會清除 localStorage API 儲存的資料,而 storage.local API 儲存的則會留著。

儲存空間不會被加密,所以你不應該把它們用來儲存用戶的機密資料。

型別

{{WebExtAPIRef("storage.StorageArea")}}
表示儲存空間的物件。
{{WebExtAPIRef("storage.StorageChange")}}
表示儲存空間變化的物件。

屬性

storage 有三個屬性,各自表示不同種類的儲存空間。

{{WebExtAPIRef("storage.sync")}}
表示 sync 儲存空間。sync 儲存空間裡的項目會被瀏覽器同步,所以可以跨裝置在所有已登入瀏覽器實例裡面使用。
{{WebExtAPIRef("storage.local")}}
表示 local 儲存空間。local 儲存空間裡的項目會被侷限在安裝套件的機器上。
{{WebExtAPIRef("storage.managed")}}
表示 managed 儲存空間。managed 儲存空間的項目由網域管理者設置而且對套件唯讀,修改這項會導致錯誤。

事件

{{WebExtAPIRef("storage.onChanged")}}
當儲存空間裡的一個或更多項目被修改時觸發。

瀏覽器兼容性

{{Compat("webextensions.api.storage")}}

{{WebExtExamples("h2")}}

Acknowledgements

This API is based on Chromium's chrome.storage API. This documentation is derived from storage.json in the Chromium code.

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.