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é du navigateur

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxOperaFirefox pour Android
Support simpleChrome Support complet OuiEdge Support complet 14Firefox Support complet 45
Notes
Support complet 45
Notes
Notes The storage API is supported in content scripts from version 48.
Opera Support complet OuiFirefox Android Support complet 48

Légende

Support complet  
Support complet
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Example extensions

Remerciements :

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.

Étiquettes et contributeurs liés au document

Contributeurs à cette page : hellosct1
Dernière mise à jour par : hellosct1,