Szukaj…


Wprowadzenie

Zintegruj Firebase z Google AppScript, aby odczytywać i zapisywać dane w bazie danych Firebase.

Firebase to system bazy danych NoSQL firmy Google, który korzysta z bazy danych w czasie rzeczywistym, aby pomóc w tworzeniu i hostowaniu aplikacji na urządzenia mobilne, stacjonarne i tablety. Bazy danych NoSQL używają obiektów JSON do przechowywania danych w formacie strukturalnym.

Łączenie z projektem Firebase w GAS i przesyłanie danych z arkusza kalkulacyjnego Google do Firebase

Zainstaluj zasób Firebase w AppScript

  • W tym celu kliknij Zasoby, a następnie Biblioteki.
  • Firebase ma unikalny klucz biblioteki projektu, który należy zainstalować w AppScript.
  • Kliknij na biblioteki Pojawi się następujące wyskakujące okienko. Wprowadź następujący klucz projektu w polu tekstowym. MYeP8ZEEt1ylVDxS7uyg9plDOcoke7-2l To jest klucz biblioteki projektu dla Firebase. wprowadź opis zdjęcia tutaj
  • Teraz w wersji wybierz stabilną publiczną wersję. wprowadź opis zdjęcia tutaj
  • Kliknij Zapisz. Teraz Firebase został pomyślnie zainstalowany w AppScript, abyś mógł pracować.

Teraz weźmy przykład do odczytu i zapisu danych z Firebase.

  • Teraz bierzemy przykładową tabelę zaprojektowaną w Arkuszach Google. wprowadź opis zdjęcia tutaj
  • Teraz zbuduj bazę danych w Firebase przy użyciu tej tabeli w arkuszach. Dodaj następujący kod w 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);
    }

Zastąp identyfikator arkusza kalkulacyjnego, firebaseURL i tajny klucz.

Jak znaleźć firebaseURL i tajny klucz?

  • Przejdź do pulpitu nawigacyjnego Firebase i kliknij ikonę ustawień w lewym górnym rogu. Kliknij Ustawienia projektu. wprowadź opis zdjęcia tutaj
  • Przejdź do sekcji Konta usług, w której można znaleźć bazę danychURL. Służy to jako firebaseURL.
  • Teraz kliknij kartę Secrets bazy danych i możesz znaleźć tajny klucz.

Teraz wstawiłeś firebaseURL i tajny klucz. Teraz wszystko jest gotowe. Kliknij uruchom kod w silniku AppScript.

  • Po uruchomieniu poprosi o sprawdzenie uprawnień.
  • Kliknij opcję Przejrzyj uprawnienia i zezwól.
  • Teraz uruchom swoją funkcję i możesz zobaczyć tabelę utworzoną w bazie danych Firebase.

Aby zobaczyć bazę danych, przejdź do pulpitu nawigacyjnego Firebase i kliknij Baza danych, aby wyświetlić bazę danych.

Niektóre dodatkowe funkcje do implementacji odczytu i zapisu.

1. Aby napisać proste dane, aby sprawdzić, czy połączenie działa, czy nie.

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. Aby odczytać wszystkie dane

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);
          }
}

Odczytane dane są wyświetlane w dziennikach. Aby sprawdzić dzienniki, kliknij Widok → Dzienniki lub po prostu użyj Control + Enter.

3. Aby odczytać konkretny zapis

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);
}

Odczytane dane są wyświetlane w dziennikach. Aby sprawdzić dzienniki, kliknij Widok → Dzienniki lub po prostu użyj Control + Enter.

4. Aby zaktualizować określony rekord.

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]");
}


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow