2010-11-19 12 views
5

Sto facendo una piccola estensione di Chrome e vorrei mantenere i suoi dati online.
Ho bisogno di un provider di hosting cloud gratuito e molto piccolo (< per utente) che ha un'autenticazione indolore.
Idealmente, mi piacerebbe solo un'API di Google che faccia localStorage, ma nel cloud e diverso per ogni nome utente.chrome extension con cloud storage

risposta

5

Perché non puoi utilizzare Google App Engine? L'API è abbastanza facile da usare. Oppure utilizza altri servizi Google legati a ciascun utente come Google Documenti. In questo modo Google Chrome Sync memorizza i segnalibri sincronizzati nel tuo browser tramite Documenti.

Per quanto riguarda localStorage, localStorage è un'API di memorizzazione del valore chiave per JavaScript (lato client). Se si desidera archiviare esternamente il localStorage dell'interno, è possibile iterare le chiavi/i valori di archiviazione e memorizzarli contattando un servizio esterno (qualsiasi API si usi). E recuperali ogni volta che inizia l'estensione (nella pagina background.html).

Perché lo faresti? Google Chrome Sync, sincronizza tutte queste informazioni per impostazione predefinita.

+1

Il motore dell'app sembra una buona scelta. A proposito, conosci un sito con esempi di sincronizzazione di Chrome? – x10

+1

Chrome Sync viene eseguito in modo nativo all'interno del browser non all'interno di un'estensione. Memorizzano i segnalibri in Google Documenti (puoi leggere le API che Doc ha da offrire e fare lo stesso se lo desideri). Se vuoi solo sincronizzare i tuoi prefs da qualche parte online (per la gestione online), basta ripetere l'elenco e archiviare le chiavi nel datastore di Google App Engine. –

15

FYI c'è una nuova API di estensione per archiviare in modo asincrono cose come le impostazioni dell'utente e, opzionalmente, sincronizzarle sugli altri dispositivi dell'utente.

https://developer.chrome.com/extensions/storage.html

Ad esempio:

chrome.storage.sync.set({name:'Bob'}, function() { 
    console.log('Name saved'); 
}); 

// Later on... 
chrome.storage.sync.get('name', function(r) { 
    console.log('Name retrieved: ' + r['name']); 
}); 

Utilizzando sync sincronizzerà questi dispositivi in ​​tutto, utilizzando local non lo faranno.

Problemi correlati