google-apps-script
Firebase и AppScript: Введение
Поиск…
Вступление
Интегрируйте Firebase с Google AppScript для чтения и записи данных в базе данных Firebase.
Firebase - это система баз данных NoSQL от Google, которая использует базу данных в реальном времени для создания и размещения приложений на мобильных, настольных и планшетных устройствах. Базы данных NoSQL используют объекты JSON для хранения данных в структурированном формате.
Подключение к проекту Firebase в GAS и передача данных из Google Spreadsheet в Firebase
Установите ресурс Firebase в AppScript
- Для этого нажмите «Ресурсы», а затем «Библиотеки».
- Firebase имеет уникальный ключ библиотеки проекта, который необходимо установить в AppScript.
- Нажмите «Библиотеки». Появится следующее всплывающее окно. Введите следующий код проекта в текстовое поле. MYeP8ZEEt1ylVDxS7uyg9plDOcoke7-2l Это ключ библиотеки проекта для Firebase.
- Теперь в версии выберите стабильную версию общедоступного выпуска.
- Нажмите «Сохранить». Теперь Firebase успешно установлена в вашем приложении, чтобы вы могли работать.
Теперь давайте возьмем пример для чтения и записи данных из Firebase.
- Теперь мы возьмем примерную таблицу, разработанную в Google Таблицах.
- Теперь создадим базу данных в Firebase, используя эту таблицу в листах. Добавьте следующий код в 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);
}
Замените идентификатор электронной таблицы и firebaseURL и секретный ключ.
Как найти firebaseURL и секретный ключ?
- Перейдите в панель Firebase Dashboard и нажмите на настройку в левом верхнем углу. Нажмите «Настройки проекта».
- Перейдите в раздел «Учетные записи службы», где вы можете найти базу данныхURL. Это служит firebaseURL.
- Теперь перейдите на вкладку «Секреты базы данных», и вы можете найти секретный ключ.
Теперь вы вставили firebaseURL и секретный ключ. Теперь все готово. Нажмите на код запуска в движке AppScript.
- Он попросит сначала просмотреть разрешения в первый раз при запуске.
- Нажмите «Разрешения» и «Разрешить».
- Теперь вы запускаете свою функцию, и вы можете увидеть таблицу, созданную в базе данных Firebase.
Чтобы увидеть базу данных, перейдите на панель мониторинга Firebase и щелкните по базе данных, которую вы можете просмотреть в базе данных.
Еще несколько функций для реализации чтения и записи.
1. Чтобы написать простые данные, чтобы проверить, работает ли соединение, нет.
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. Чтобы прочитать все данные
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);
}
}
Чтение данных отображается в журналах. Чтобы проверить журналы, нажмите на кнопку «Просмотр» → «Журналы» или просто нажмите «Управление» + «Ввод».
3. Чтобы прочитать конкретную запись
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);
}
Чтение данных отображается в журналах. Чтобы проверить журналы, нажмите на кнопку «Просмотр» → «Журналы» или просто нажмите «Управление» + «Ввод».
4. Чтобы обновить определенную запись.
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]");
}