storage.local

Représente la zone de stockage local. Les éléments stockés localement sont locaux sur la machine sur laquelle l'extension a été installée.

Le navigateur peut limiter la quantité de données qu'une extension peut stocker dans la zone de stockage locale :

  • Chrome limite l'extension à 5 Mo de données à l'aide de cette API à moins qu'elle ne dispose de permission "unlimitedStorage".
  • Firefox vous permet de demander la permission "unlimitedStorage" à partir de la version 56. Il ne limite pas encore la quantité de données que votre extension peut stocker, mais commencera à le faire dans une future version : c'est donc une bonne idée de demander la permission "unlimitedStorage" maintenant, si vous avez l'intention de stocker une grande quantité de données.

Lorsque l'extension est désinstallée, son stockage local associé est effacé.

Toujours dans Firefox, vous pouvez empêcher le navigateur d'effacer le stockage local lors de la désinstallation en visitant "about:config" et en définissant les deux préférences de navigateur suivantes sur true: "keepUuidOnUninstall" et "keepStorageOnUninstall". Cette fonctionnalité est fournie pour aider les développeurs à tester leurs extensions. Les extensions elles-mêmes ne sont pas en mesure de modifier ces préférences.

Bien que cette API soit similaire à Window.localStorage il est recommandé de ne pas utiliser Window.localStorage dans le code d'extension. Firefox effacera les données stockées par les extensions à l'aide de l'API localStorage dans divers scénarios où les utilisateurs effacent leur historique de navigation et leurs données pour des raisons de confidentialité, tandis que les données enregistrées avec l'API storage.local seront correctement conservées dans ces scénarios.

Méthodes

L'objet local local implémente les méthodes définies sur le type storage.StorageArea :

storage.StorageArea.get()

Récupère un ou plusieurs éléments de la zone de stockage.

storage.StorageArea.getBytesInUse()

Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.

storage.StorageArea.set()

Stocke un ou plusieurs éléments dans la zone de stockage. Si l'élément existe déjà, sa valeur sera mise à jour. Lorsque vous définissez une valeur, l'événement storage.onChanged se déclenche.

storage.StorageArea.remove()

Supprime un ou plusieurs éléments de la zone de stockage..

storage.StorageArea.clear()

Supprime tous les éléments de la zone de stockage.

Compatibilité des navigateurs

BCD tables only load in the browser

Example extensions

Note :

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.