Comment puis-je enregistrer des informations localement dans mon extension chrome?

Je veux que mon extension chrome enregistre des informations, et je ne sais pas comment démarrer le code... J'en ai besoin pour sauver des cordes. Par exemple - l'utilisateur entre une chaîne (dans une zone de texte sur la fenêtre contextuelle) et cette chaîne est affichée sur la fenêtre contextuelle. Lorsque l'utilisateur le quitte et retourne, je veux que la chaîne reste la même. (Je pense qu'il a l'enregistrer) Je ne veux pas de l'enregistrer sur mon serveur ou quelque chose comme ça, je veux qu'il soit enregistré sur les utilisateurs cache ou quelque chose.

45
demandé sur Ariel 2011-03-19 21:41:27

2 réponses

Vous pouvez maintenant tirer parti de L'API storage de Google Chrome pour le faire également. Contrairement à localStorage, Ceci est également accessible à partir des scripts de contenu.

//  Somewhere in your manifest...

{
    "permissions": [
        "storage"
    ]
}

//  Usage:

//  PERSISTENT Storage - Globally
//  Save data to storage across their browsers...

chrome.storage.sync.set({ "yourBody": "myBody" }, function(){
    //  A data saved callback omg so fancy
});

chrome.storage.sync.get(/* String or Array */["yourBody"], function(items){
    //  items = [ { "yourBody": "myBody" } ]
});

//  LOCAL Storage

// Save data to storage locally, in just this browser...

chrome.storage.local.set({ "phasersTo": "awesome" }, function(){
    //  Data's been saved boys and girls, go on home
});

chrome.storage.local.get(/* String or Array */["phasersTo"], function(items){
    //  items = [ { "phasersTo": "awesome" } ]
});

Plus d'informations sur la façon dont ces manigances fonctionnent ici: https://developer.chrome.com/extensions/storage#type-StorageArea

Ancien réponse:

Utilisez localStorage . Google Chrome implémente certaines fonctionnalités de HTML5, et il est l'un d'entre eux.

//Pull text from user inputbox
var data = document.getElementById("this_input").value;
//Save it to the localStorage variable which will always remember what you store in it
localStorage["inputText"] = data; 

Vous devez noter que vous ne pouvez accéder à votre stockage que depuis la page d'arrière-plan (Pas de scripts de contenu) vous devrez donc utiliser la messagerie pour cela.

79
répondu mattsven 2017-01-17 04:28:54

Il y a une API spécifique maintenant, vérifiez ceci ici: https://developer.chrome.com/extensions/storage

Notez qu'il n'est disponible que sur votre page d'arrière-plan et fonctionne dans un monde isolé (vous n'ACCÉDEZ PAS aux valeurs contenues dans le HTML5 localStorage du site web).

0
répondu BeauCielBleu 2014-06-17 21:25:34