Firebase что это такое

Firebase — Краткое руководство

Согласно официальной документации Firebase —

Firebase может обеспечить поддержку вашего приложения, включая хранение данных, аутентификацию пользователей, статический хостинг и многое другое. Сосредоточьтесь на создании необычного пользовательского опыта. Мы позаботимся об остальном. Создавайте кроссплатформенные собственные мобильные и веб-приложения с помощью наших Android, iOS и JavaScript SDK. Вы также можете подключить Firebase к существующему бэкэнду с помощью наших серверных библиотек или нашего REST API.

Firebase может обеспечить поддержку вашего приложения, включая хранение данных, аутентификацию пользователей, статический хостинг и многое другое. Сосредоточьтесь на создании необычного пользовательского опыта. Мы позаботимся об остальном. Создавайте кроссплатформенные собственные мобильные и веб-приложения с помощью наших Android, iOS и JavaScript SDK. Вы также можете подключить Firebase к существующему бэкэнду с помощью наших серверных библиотек или нашего REST API.

Особенности Firebase

База данных в реальном времени — Firebase поддерживает данные JSON, и все подключенные к ней пользователи получают оперативные обновления после каждого изменения.

Аутентификация — мы можем использовать анонимную, парольную или другую социальную аутентификацию.

База данных в реальном времени — Firebase поддерживает данные JSON, и все подключенные к ней пользователи получают оперативные обновления после каждого изменения.

Аутентификация — мы можем использовать анонимную, парольную или другую социальную аутентификацию.

Преимущества Firebase

Это просто и удобно для пользователя. Нет необходимости в сложной конфигурации.

Данные в режиме реального времени, что означает, что каждое изменение будет автоматически обновлять подключенных клиентов.

Firebase предлагает простую панель управления.

Есть ряд полезных услуг на выбор.

Это просто и удобно для пользователя. Нет необходимости в сложной конфигурации.

Данные в режиме реального времени, что означает, что каждое изменение будет автоматически обновлять подключенных клиентов.

Firebase предлагает простую панель управления.

Есть ряд полезных услуг на выбор.

Ограничения Firebase

В следующей главе мы обсудим настройку среды Firebase.

Firebase — настройка среды

Шаг 1 — Создать учетную запись Firebase

Шаг 2 — Создание приложения Firebase

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Шаг 3а — Создание базового приложения HTML / js

index.html

Шаг 3б — Используйте NPM или Bower

Если вы хотите использовать существующее приложение, вы можете использовать пакеты Firebase NPM или Bowers. Запустите одну из следующих команд из корневой папки приложений.

Firebase — Данные

Мы создадим простую структуру данных. Вы можете проверить изображение ниже.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

В предыдущей главе мы подключили Firebase к нашему приложению. Теперь мы можем войти в Firebase на консоль.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Мы можем создать ссылку на коллекцию нашего игрока.

Мы можем увидеть следующий результат в консоли.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Firebase — Массивы

Эта глава объяснит представление массивов в Firebase. Мы будем использовать те же данные из предыдущей главы.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Мы могли бы создать эти данные, отправив следующее дерево JSON в коллекцию проигрывателя.

Это связано с тем, что Firebase напрямую не поддерживает массивы, но создает список объектов с целыми числами в качестве имен ключей.

Причина, по которой не используются массивы, заключается в том, что Firebase действует как база данных в реальном времени, и если пара пользователей будет одновременно манипулировать массивами, результат может быть проблематичным, поскольку индексы массивов постоянно меняются.

В Firebase ключи (индексы) всегда остаются неизменными. Мы могли бы удалить Джона, и у Аманды все еще был бы ключ (индекс) 1.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Firebase — запись данных

В этой главе мы покажем вам, как сохранить ваши данные в Firebase.

Задавать

Метод set запишет или заменит данные по указанному пути. Давайте создадим ссылку на коллекцию игроков и установим двух игроков.

Мы увидим следующий результат.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Обновить

Когда мы обновляем наше приложение, мы видим, что данные Firebase обновляются.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Firebase — запись списка данных

В нашей последней главе мы показали, как записывать данные в Firebase. Иногда вам нужно иметь уникальный идентификатор для ваших данных. Если вы хотите создать уникальные идентификаторы для ваших данных, вам нужно использовать метод push вместо метода set.

Метод толчка

Метод push () создаст уникальный идентификатор при отправке данных. Если мы хотим создать наших игроков из предыдущих глав с уникальным идентификатором, мы могли бы использовать фрагмент кода, приведенный ниже.

Теперь наши данные будут выглядеть иначе. Имя будет просто парой имя / значение, как и остальные свойства.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Ключевой метод

Консоль будет записывать название нашей коллекции (игроки).

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Подробнее об этом в наших следующих главах.

Firebase — запись транзакционных данных

Транзакционные данные используются, когда вам нужно вернуть некоторые данные из базы данных, а затем выполнить некоторые вычисления и сохранить их обратно.

Допустим, у нас есть один игрок в нашем списке игроков.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Мы хотим получить свойство, добавить один год и вернуть его обратно в Firebase.

AmandaRef извлекает возраст из коллекции, а затем мы можем использовать метод транзакции. Мы получим текущий возраст, добавим один год и обновим коллекцию.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Firebase — чтение данных

В этой главе мы покажем вам, как читать данные Firebase. На следующем рисунке показаны данные, которые мы хотим прочитать.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Мы можем использовать метод on () для извлечения данных. Этот метод принимает тип события как «значение», а затем извлекает снимок данных. Когда мы добавим метод val () в снимок, мы получим представление данных в JavaScript.

пример

Давайте рассмотрим следующий пример.

Если мы запустим следующий код, наша консоль покажет данные.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

В нашей следующей главе мы объясним другие типы событий, которые вы можете использовать для чтения данных.

Firebase — Типы событий

Firebase предлагает несколько различных типов событий для чтения данных. Некоторые из наиболее часто используемых из них описаны ниже.

значение

child_added

Этот тип события будет запускаться один раз для каждого игрока, и каждый раз, когда новый игрок добавляется к нашим данным. Это полезно для чтения данных списка, потому что мы получаем доступ к добавленному игроку и предыдущему игроку из списка.

пример

Давайте рассмотрим следующий пример.

Мы получим следующий результат.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Если мы добавим нового игрока по имени Боб, мы получим обновленные данные.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

child_changed

Этот тип события запускается при изменении данных.

Источник

Введение в Firebase: пишем простое социальное приложение на Swift

В связи с неожиданным решением Facebook закрыть Parse, многое разработчики задались вопросом, что использовать вместо него. Сегодня практически невозможно представить полностью автономное приложение, которое было бы полезное всем. В связи с этим, iOS разработчики в своей работе пользуются инструментами и ресурсами, предоставленные Apple для доступа к данным. Backend-as-a-service, или сокращенно BaaS является потрясающим инструментом для разработчиков.

Среди наилучших и наиболее популярных BaaSs можно выделить Firebase от компании Google. По существу, Firebase является безусловно потрясающим в исполнении, реализации и эксплуатации. Firebase служит базой данных, которая изменяется в реальном времени и хранит данные в JSON. Любые изменения в базе данных тут же синхронизируются между всеми клиентами, или девайсами, которые используют одну и ту же базу данных. Другими словами, обновление в Firebase происходят мгновенно.

Вместе с хранилищем, Firebase также предоставляет пользовательскую аутентификацию, и поэтому все данные передаются через защищенное соединение SSL. Мы можем выбрать любую комбинацию email и пароля для аутентификации, будь то Facebook, Twitter, GitHub, Google, или что-то другое.

В добавку к iOS SDK, у Firebase есть SDK для Android и JavaScript. Все платформы могут использовать одну базу данных.
Сложно представить что Firebase со всеми этими функциями бюджетное решение.

Приложение FirebaseJokes

Сегодня мы создадим приложения, с помощью которого пользователь сможет постить различные шутки, используя Firebase. В приложении можно будет создать свой аккаунт, используя email и пароль. Так же будет возможность постить шутки, отображаемый список шуток будет мгновенно обновляться. Когда другой пользователь постит новую шутку, список с шутками так же обновится. Еще в приложении мы добавим функцию голосования и самые смешные шутки будут получать баллы, которые они заслуживают.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Сначала, откройте Main.Storyboard чтобы получить визуальное представление об приложении.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

В ходе разработки приложения мы на практике проверим функциональные возможности Firebase и то что он в использовании очень прост. Мы хорошо проведете время создавая FirebaseJokes.

Время познакомиться с Firebase

Перейдем на страницу Firebase и зарегистрируем аккаунт в Firebase, или войдем в уже существующий. Так же мы можем зарегистрироваться с помощью GOOGLE аккаунта. После регистрации, мы можем пройти 5ти минутное обучение, но оно предназначено для приложений написанных на JavaScript.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Чтобы просмотреть что к чему в Firebase, нажмите Manage App в My First App. Эта новая среда известна как Firebase Forge. Это крутой отладчик, и поэтому стоит пройти по нему обучение. Урок Forge поможет вам в создании ключей, значений и даже дочерних узлов с помощью символа плюс. Имеет смысл взглянуть на JSON, не так ли? Чтобы выйти из краткого обучения Forge, нажмите на панель инструментов в верхнем левом углу экрана.

Создание нового приложения

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Время создать FirebaseJokes. Слева My First App, нажмите на прозрачный прямоугольник, чтобы создать новое приложение. В поле APP NAME, введите “Jokes”, в APP URL введите “jokes-ваше-имя”, где “ваше-имя” это ваше собственное имя. Поле должно быть уникальным, т.к. это url для вашего приложения. Нажмите CREATE NEW APP и после Manage App.

И вот наш собственный экран Forge. При добавлении данных здесь они автоматически обновляться в нашем приложении. Также мы можем добавлять данные для приложения в вкладке Forge. Чтобы понять как работает наше приложение, с точки зрения данных, мы введем некоторые данные вручную.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Вот пример того, как выглядит объект “jokes”. Мы будем добавлять новые шутки в объект “jokes”. Также нам понадобится объект “users”. Наблюдать за тем как в Forge меняются данные, созданные приложением, интересно и в то же время — это отличная практика.

Хочу отметить, что все данные в базе данных Firebase сохраняются в виде JSON. В отличии от Parse, тут не существует никаких таблиц и записей. Когда мы добавляем данные в базу данных Firebase, они становятся ключем структуры JSON. Например, данные, которые вы только что создали, выглядят так:

Теперь, когда у вас есть базовые знания о данных которые находятся в базе данных Firebas, пора двигаться дальше.
Но перед тем, как мы перейдем к аутентификации пользователя, удалим созданные данные, также как мы будем делать это программно из приложения.

Для FirebaseJokes, мы используем аутентификацию через Email и пароль. Чтобы включить эту функцию, нажмите Login & Auth на левой панели в Forge. В Email & Password, поставьте галочку на Enable Email & Password Authentication. Сразу под нажатой ячейкой находится информация об восстановлении пароля. Также, обратите внимание на другие опции аутентификации.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Добавление Firebase SDK

Для получения base url для приложения, вернитесь на главный экран Forge. Текущий url и есть url для приложения, поэтому скопируем и вставим его в BASE_URL в Constants.swift Xcode.

Самое время добавить Firebase SDK в приложение. Перед этим нужно установить CocoaPods. Если вы его еще не установили, вы можете найти инструкции по установке CocoaPods.

Когда CocoaPods установлен, откройте терминал. Запустите следующие команды для установления Cocoapods в проект Xcode:

Затем введите следующую команду, чтобы открыть Podfile в Xcode:

Затем запустите следующую команду, чтобы скачать Firebase SDK:

Открываем созданный файл FirebaseJokes.xcworkspace.

Для того что бы мы могли импортировать Firebase SDK, создайте новый Objective-c File, FileType — Empty File. Назовите его Temp. При создании файла автоматически создастся файл FirebaseJokes-Bridging-Header.h. В нем пропишите такую строчку:

Удаляем Temp.m, он нам не понадобится.

Использование Firebase SDK

Чтобы немного упростить себе жизнь, сначала мы проведём небольшую настройку в DataService.swift. В первую очередь, нам нужно несколько ссылок:

Для использования Firebase, нужно импортировать фраемворк Firebase. Класс DataService служет для взаимодействия с Firebase. Чтобы прочитать или записать данные, необходимо создать ссылку на базу данных Firebase с Firebase URL. Base URL это URL базы данных приложения. Позже мы сохраним всех пользователей и все шутки в виде дочерних узлов. Чтобы иметь доступ к дочерним узлам, можно просто задать дочернее имя (то есть пользователей) к основному URL.

Создание нового пользовательского аккаунта

Мы начнем с CreateAccountViewController.swift. Нам нужно импортировать наш фреймворк.

В методе createAccount(), мы возьмем текст, который ввел пользователь и попытаемся использовать его для создания нового пользователя. Это касается метода Firebase createUser(). Обновите существующий метод таким образом:

Если введенная информация о новом пользователе корректна, пользователь будет зарегистрирован и сможет зайти в приложение. Для любой недостающей информации будет всплывать уведомление. Для этого вставьте следующий метод в класс:

Фактически сохранение происходит в методе createNewAccount() в DataService.swift.

Для сохранения данных в базу данных Firebase, можно просто вызвать метод setValue. В коде выше, объект user сохранится в базу данных под ключом users над данным дочерним узлом uid (прим. /users/1283834/).

Кроме сохранения пользователя в базе данных Firebase, мы сохраним uid для пользователя в NSUserDefaults. Это позволит отслеживать текущего пользователя.

Авторизация пользователя

Прежде чем перейти дальше, импортируем Firebase в LoginViewController.swift. Так мы сможем отследить если кто-то уже входил или пытается зарегистрировать пользователя.
В методе viewDidAppear(), мы проверяем является ли наш сохраненный “uid” nil и имеет ли пользователь аккаунт. Если пользователь был авторизирован, он пропускает экран авторизации. В противном случае, он будет вынужден авторизироваться.

Метод tryLogin(), который вызывается при попытке авторизации. Обновите этот метод как показано ниже и вставьте вспомогательный метод loginErrorAlert:

Firebase имеет встроенную поддержку для аутентификации пользователя с помощью email адреса и пароля. Наш метод tryLogin() использует метод authUser(), который позволяет увидеть соответствует ли email и пароль аккаунта пользователя. Если да, мы сохраняем “uid” и попадаем внутрь приложения. Если нет, мы уведомляем пользователя, что бы повторил попытку авторизации.

Теперь приложение готово для регистрация пользователей и авторизации, пора преступить к самой реализации приложения.

Объект Joke

Добавление новых шуток

В AddJokeViewController.swift делаем импорт Firebase. Пользователь добавляет шутку, и мы отправляем ее в наше хранилище, откуда она мгновенно отправится на все девайсы.

В методе viewDidLoad(), мы получим текущий пользовательский username, так что сможем указать автора новой шутки.

Обновите метод saveJoke :

Мы используем Dictionary чтобы временно хранить данные шутки. Фактически сохранение происходит в методе createNewJoke в DataService. В DataService.swift, добавьте метод createNewJoke:

Опять же, вы можете сохранить объект с помощью метода setValue(). Когда вызывается метод childByAutoId Firebase генерирует уникальный ID для каждой шутки на основе маркера, которая гарантирует, что шутка получит уникальный ID.

Выход текущего пользователя из системы

Обычно это фиксируют в разделе Settings или Profile, но мы дадим пользователю возможность выйти в AddJokeViewController.swift.

Обновите метод logout:

Если вы не удалите пользовательский “uid”, у вас будут проблемы при входе в приложение нового пользователя.

Отображение всех шуток на экране

В конечном счете, данные получаются с Firebase. Мы составляем список всех шуток в UITableView расположенные в JokesFeedTableViewController.swift. Не удивительно, что здесь мы будем импортировать Firebase.

Начнем с метода viewDidLoad(). Устанавливаем наш метод observeEventType(). Данные Firebase приходят путем добавления асинхронного слушателя к ссылке базы данных. Этот метод не вызывается во viewDidLoad() при переходе на JokesFeedTableViewController.swift, его вызывают при любых изменениях в jokes со стороны базы данных.

Метод предоставляет снимок. Используя снимок, мы можем создать ряд шуток для заполнения нашей tableView. Для шуток Firebase, мы создадим список, где новые шутки будут отображаться вверху. Поскольку Firebase распределит шутки в хронологическом порядке, мы сможем только создать ряд в обратном направлении.

Хорошо бы иметь постоянно обновляющийся массив шуток, мы помним про необходимость обновления данных в tableView чтобы мы могли увидеть их.

Остальная часть работы распределяется между tableView:cellForRowAtIndexPath: и нашей кастомной ячейкой, JokeCellTableViewCell.swift. В методе tableView:cellForRowAtIndexPath: мы отправляем шутку в метод configureCell() в JokeCellTableViewCell.swift.

Добавим метод configureCell(), в JokeCellTableViewCell.swift.

В методе voteTapped() слушатель ожидает сигнала. В этом методе сохраняются «голоса» текущего пользователя с ключом содержащим id шутки и true значение. Все это отправляется через созданный voteRef в метод configureCell().

Метод voteTapped() также ретранслирует сигнал как булевое значение в метод addSubtractVote() в Joke.swift. Значение true означает, что пользователь проголосовал за шутку; тогда как false означает, что пользователь еще не голосовал за нее.

Метод addSubtractVote(), в Joke.swift, использует булевое значение чтобы добавить или вычесть vote из joke. Затем, метод Firebase setValue() обновляет голоса по отношению к базе данных.

Тестирование приложения

Теперь протестируем приложение. Создайте нового пользователя и добавьте несколько шуток. У вас будет возможность голосовать за шутки. И если вы просмотрите в панель инструментов, то увидите созданных пользователей и созданные шутки.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Подведем итог

Мы это сделали! Это довольно забавное небольшое приложение, которое понравится пользователям благодаря его скорости отклика. Мы также получили опыт работы с Firebase.

Для IOS разработчиков существует целый мир новых возможностей с Firebase. Работа с FirebaseJokes послужит хорошей практикой, но это только начало.

Смотрите другие опции аутентификации пользователя, добавляйте новые функции к FirebaseJokes, изучайте функциональность чата, короче говоря, возможностей полно.

Пару советов относительно хранения изображений: Firebase предоставляет относительно скромные количество памяти для их хранения, поэтому изображения лучше хранить в другом месте.

Удачи в работе работая с Firebase в ваших будущих проектах!

Источник

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

Firebase

Содержание

Особенности

Синхронизация в реальном времени для данных JSON

База данных Firebase Realtime представляет собой облачную базу данных NoSQL, которая позволяет хранить и синхронизировать данные между вашими пользователями в режиме реального времени.

Совместно работать с устройствами

Синхронизация в реальном времени позволяет пользователям получать доступ к своим данным с любого устройства: веб-или мобильным, и это помогает вашим пользователям сотрудничать друг с другом.

Создание безсерверных приложений

База данных Realtime поставляется с мобильными и веб-SDK, поэтому вы можете создавать приложения без необходимости серверов. Вы также можете выполнить код бэкэнд, который реагирует на события, инициируемые вашей базой данных, используя Cloud Function for Firebase.

Оптимизирован для автономного использования

Когда ваши пользователи переходят в автономный режим, SDK базы данных Realtime использует локальный кэш на устройстве для обслуживания и сохранения изменений. Когда устройство подключается к сети, локальные данные автоматически синхронизируются.

Сильная пользовательская безопасность

База данных Realtime интегрируется с Firebase Authentication для обеспечения простой и интуитивной аутентификации для разработчиков. Вы можете использовать нашу декларативную модель безопасности, чтобы разрешить доступ на основе идентификатора пользователя или соответствия шаблонов вашим данным.

Недостатки

Выбирать решение для хранения данных нужно исходя из природы самих данных. Firebase имеет свои недостатки:

Приступая к работе

Для примера будет использовать Android устройство.

RealtimeFirebase

Установка

Для начало нужно включить плагин google-services и репозиторий Google Maven. В файл build.gradle прописываем:

Затем в вашем файле Gradle (обычно это app/build.gradle) добавьте apply pluginстроку внизу файла, чтобы включить плагин Gradle:

Чтобы открыть Firebase Assistant в Android Studio:

Добавление данных в базу данных

Добавим кол-во детей в базу данных. Инициализируем переменную myRef. После чего в child() прописываем путь куда именно в базу данных мы должны положить значение:

Удаление данных из базы данных

Для того, чтобы удалить данные из базы данных, нужно ветке, которую мы хотим удалить, присвоить значение null. В данном примере мы удаляем все данные пользователя:

Так же можно удалить данные через CloudFunction, но об этом будет ниже.

Получение данных из базы данных

Для получения данных из бд, нужно установить Listener, который будет в фоне запрашивать и получать данные.

В функцию onDataChange мы прописываем код для получения базы данных. В данном случае мы получаем имя ребенка. Важная особенность данной базы в том, что данные будут скачиваться всей ветки, которой мы указали перед Listener.

В данном коде используется класс Array.

Создание базы данных

Для того, чтобы протестировать приложение и найти слабы места в коде, нужно создать базу данных с большим объемом данных. Тут есть несколько вариантов реализации данной задачи.

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Защита от удаления данных

Для того, чтобы защитить базу данных от ее полного удаления в случае, если была допущена ошибка в коде, нужно добавить защиту. Реализовать это можно через CloudFunction. В данном примере, получая запрос на удаление ветки “users”, происходит полная перезапись данных в бд. К сожалению нельзя отловить запрос на удаление ветки и отменить его.

CloudFunction

Установка

Для инициализации вашего проекта:

Для этого примера ваш проект должен импортировать модули облачных функций и административные SDK с помощью require операторов Node. Добавьте в index.js файл следующие строки:

Эти строки загружают модули firebase-functions и firebase-admin модули и инициализируют admin экземпляр приложения, из которого могут быть сделаны изменения в базе данных Realtime.

Удаление данных из базы данных через CloudFunction

В развертываемой функции нужно прописать код для удаления данных. Тут мы во время удаления данных делаем копию ветки с новым названием:

В самом приложении мы должны добавить запрос на удаление данных:

Для получение результата о выполнении функции, нужно добавить Listener

Обработчик событий базы данных

Любое изменение в базе данных можно отловить и обработать. Для этого CloudFunction предлагает несколько функций:

В данном примере используется onDelete для блокирования удаления данных из бд.

Удаление файлов из Storage используя облачные функции

Для удаления файлов, нужно в функции указать путь до файла:

Storage

Загрузка файлов происходит через консоль вашей базы данных:

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

После того, как файл был загружен, firebase создает ссылку:

Firebase что это такое. Смотреть фото Firebase что это такое. Смотреть картинку Firebase что это такое. Картинка про Firebase что это такое. Фото Firebase что это такое

Прокси сервис

Так как сейчас происходит блокировка ip firebase нужно использовать прокси сервер, иначе пользователь не получит доступ к данным.

Запуск и развертывание

Установите зависимости и выполните:

Развертывание на Apigee Edge

Чтобы развернуть этот API-прокси на Edge, убедитесь, что apigeetool установлен на вашем компьютере.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Sr.No.Программное обеспечение и описание
1