google-apps-script
Firebase e AppScript: Introduzione
Ricerca…
introduzione
Integrare Firebase con Google AppScript per leggere e scrivere dati nel database Firebase.
Firebase è un sistema di database NoSQL di Google che utilizza database in tempo reale per aiutare a creare e ospitare applicazioni su dispositivi mobili, desktop e tablet. I database NoSQL utilizzano gli oggetti JSON per archiviare i dati in formato strutturato.
Connessione a un progetto Firebase in GAS e trasferimento di dati da Google Spreadsheet a Firebase
Installa la risorsa Firebase in AppScript
- Per farlo clicca su Risorse e poi su Librerie.
- Firebase ha una chiave di libreria di progetto univoca che deve essere installata in AppScript.
- Fare clic su Librerie Viene visualizzato il seguente popup. Inserisci la seguente chiave di progetto nella casella di testo. MYeP8ZEEt1ylVDxS7uyg9plDOcoke7-2l Questa è la chiave di libreria del progetto per Firebase.
- Ora nella versione scegli la versione pubblica stabile.
- Clicca su Salva. Ora Firebase è stato installato con successo in AppScript affinché tu possa lavorare.
Ora facciamo un esempio per leggere e scrivere dati da Firebase.
- Ora prendiamo una tabella di esempio progettata in Fogli Google.
- Ora per costruire il database nel Firebase usando questa tabella nei fogli. Aggiungi il seguente codice in AppScript.
function writeDataToFirebase() {
var ss = SpreadsheetApp.openById("1LACsj0s3syAa9gvORdRWBhJ_YcXHybjQfHPgw3TLQ6g");
var sheet = ss.getSheets()[0];
var data = sheet.getDataRange().getValues();
var dataToImport = {};
for(var i = 1; i < data.length; i++) {
var firstName = data[i][0];
var lastName = data[i][1];
dataToImport[firstName + '-' + lastName] = {
firstName:firstName,
lastName:lastName,
emailAddress:data[i][2],
semester:data[i][4],
department:data[i][5],
};
}
var firebaseUrl = "https://example-app.firebaseio.com/";
var secret = "secret-key";
var base = FirebaseApp.getDatabaseByUrl(firebaseUrl, secret);
base.setData("", dataToImport);
}
Sostituisci l'ID del foglio di calcolo e il firebaseURL e la chiave segreta.
Come trovare firebaseURL e la chiave segreta?
- Vai alla Firebase Dashboard e fai clic su impostazioni gear nell'angolo in alto a sinistra. Clicca su Impostazioni progetto.
- Vai alla sezione Account di servizio puoi trovare databaseURL. Questo serve come firebaseURL.
- Ora fai clic sulla scheda Database Secrets e puoi trovare la chiave segreta.
Ora hai inserito firebaseURL e la chiave segreta. Ora sei pronto per partire. Fare clic su Esegui codice nel motore AppScript.
- Richiederà di rivedere i permessi la prima volta quando corri.
- Fai clic su Verifica autorizzazioni e Consenti.
- Ora esegui la tua funzione e puoi vedere la tabella creata nel Database Firebase.
Per vedere il database vai al dashboard di Firebase e clicca sul Database per visualizzare il database.
Altre funzioni per implementare leggere e scrivere.
1. Scrivere un semplice dato per verificare se la connessione funziona o meno.
function myFunction(){
var firebaseUrl = "https://example-app.firebaseio.com/";
var secret = "secret-key";
var base = FirebaseApp.getDatabaseByUrl(firebaseUrl, secret);
base.setData("test", "Hello Firebase");
}
2. Leggere tutti i dati
function getAllData() {
var firebaseUrl = "https://example-app.firebaseio.com/";
var secret = "secret-key";
var base = FirebaseApp.getDatabaseByUrl(firebaseUrl, secret);
var data = base.getData();
for(var i in data) {
Logger.log(data[i].firstName + ' ' + data[i].lastName);
}
}
I dati letti sono visualizzati nei registri. Per controllare i registri fare clic su fare clic su Visualizza → Registri o semplicemente utilizzare Control + Invio.
3. Leggere un record specifico
function getContact() {
var firebaseUrl = "https://example-app.firebaseio.com/";
var secret = "secret-key";
var base = FirebaseApp.getDatabaseByUrl(firebaseUrl, secret);
var contact = base.getData("Yash-Udasi");
Logger.log(contact);
}
I dati letti sono visualizzati nei registri. Per controllare i registri fare clic su fare clic su Visualizza → Registri o semplicemente utilizzare Control + Invio.
4. Per aggiornare un record specifico.
function updateData() {
var firebaseUrl = "https://example-app.firebaseio.com/";
var secret = "secret-key";
var base = FirebaseApp.getDatabaseByUrl(firebaseUrl, secret);
base.updateData("Yash-Udasi/emailAddress", "[email protected]");
}