В этом руководстве мы собираемся создать и развернуть NodeJS REST API в облачных функциях Firebase примерно за 5 минут 🥳🥳
В этом руководстве мы будем использовать ExpressJ в качестве нашей платформы.
Предпосылки
- Аккаунт Firebase создайте здесь
- Установленные на вашем компьютере NodeJs скачать здесь
- Firebase Tools Cli, который можно установить глобально, запустив
npm install -g firebase-tools
Настройка проекта
Сначала нам понадобится проект firebase, поэтому давайте создадим его на консоли firebase.
Теперь давайте настроим облачные функции на панели управления Firebase.
Теперь, когда наш проект создан и облачные функции настроены, перейдем к терминалу и настроим наш проект узла.
- Создайте каталог и запустите
npm init
, чтобы инициализировать новое приложение узла. - Внутри нового каталога запустите
firebase init
, чтобы инициализировать firebase в нашем приложении.Select functions
на экране настройки, затемchoose an existing application
, выберите приложение, которое мы создали в консоли firebase,choose JavaScript
в качестве языка и, наконец,install dependencies
. - Перейдите в каталог функций, запустив
cd functions
- Запустите
npm install express cors
, чтобы установить зависимости, которые нам понадобятся. - Добавьте код ниже.
Если мы хотим протестировать наш api локально перед развертыванием в firebase, мы можем запустить firebase serve
в нашей папке функций и получить URL-адрес, подобный этому http://localhost:5000/noderestapi-3ffc1/us-central1/FruitsApi
Чтобы развернуть нашу функцию, мы запускаем firebase deploy —-only functions
, и все готово! 🤩🤩 Мы должны получить такой URL после развертывания нашего API https://us-central1-noderestapi-3ffc1.cloudfunctions.net/FruitsApi
Примечание. если вы получили такую ошибку
HTTP Error: 400, Billing account for project ‘375158879459’ is not found. Billing must be enabled for activation of service(s) ‘cloudbuild.googleapis.com,containerregistry.googleapis.com to proceed.
, вы можете изменить время выполнения узла в вашемpackage.json
файле на узел 8
К вашему сведению: Firebase перестанет поддерживать среду выполнения node.js 8 с 15.03.2021. Чтобы использовать среду выполнения Node 10, вам необходимо включить выставление счетов для вашего проекта.
Теперь мы готовы протестировать наш api!
Следуй за мной на GitHub 🤗🤗