Cloud Functions for Firebase を試す
「Cloud Functions for Firebase」を試したので、まとめました。
1. Cloud Functions for Firebase
「Cloud Functions for Firebase」は、Firebaseのサーバレスフレームワークです。サーバーレスは、サーバーの構築や保守をすることなく、サーバー上でプログラムを実行できる仕組みです。HTTPアクセスやデータベース更新がトリガーになります。
2. 使用料金
使用料金は、次のとおりです。試すための無料枠もあります。
現在の使用料金は、Firebaseプロジェクトの「歯車アイコン→使用量と請求額」で確認できます。
3. プロジェクトの準備
プロジェクトの準備の手順は、次のとおりです。
(1) Firebaseコンソールで、Firebaseプロジェクトを作成。
(2) PCのコンソールで「Node.js」をインストール。
(3) 「firebase-tools」のインストール。
$ npm install -g firebase-tools
(4) Firebaseにログイン。
ブラウザのログイン画面が開くのでログインします。
$ firebase login
(5) プロジェクトフォルダを作成。
$ mkdir helloworld
$ cd helloworld
(6) プロジェクトの初期化の開始。
$ firebase init functions
(7) プロジェクトの作成で、「既存プロジェクトの使用」(Use an existing project)を選択。
上下キーとEnterで選択します。
? Please select an option: (Use arrow keys)
❯ Use an existing project
Create a new project
Add Firebase to an existing Google Cloud Platform project
Don't set up a default project
(8) プロジェクトの選択で、先程作ったFirebaseプロジェクトを選択。
? Select a default Firebase project for this directory: (Use arrow keys)
❯ test-123456 (Test)
(9) 言語の選択で「JavaScript」を選択。
? What language would you like to use to write Cloud Functions? (Use arrow keys)
❯ JavaScript
TypeScript
(10) ESLintを使うかどうかで、デフォルト(N)を選択。
Enterキーのみでデフォルトになります。
Do you want to use ESLint to catch probable bugs and enforce style? (y/N)
(11) 依存関係をインストールするかどうかで、デフォルト(Y)を選択。
? Do you want to install dependencies with npm now? (Y/n)
次のような構成のプロジェクトフォルダができます。
4. 関数の作成
関数の作成手順は、次のとおりです。
(1) 「functions/index.js」を以下のように編集。
HTTPアクセス時に"Hello from Firebase!"という文字列を返すプログラムになります。
const functions = require("firebase-functions");
exports.helloWorld = functions.https.onRequest((request, response) => {
functions.logger.info("Hello logs!", {structuredData: true});
response.send("Hello from Firebase!");
});
5. 関数のローカルでの動作確認
関数のローカルでの動作確認の手順は、次のとおりです。
(1) ローカルサーバの起動。
起動成功すると、アクセス先URLが表示されます。
$ firebase serve
http function initialized (http://localhost:5001/test-123456/us-central1/helloWorld).
(2) ブラウザでアクセス先URLを開く。
6. 関数のデプロイ
関数のデプロイの手順は、次のとおりです。
(1) 関数のデプロイ。
$ firebase deploy --only functions
完了すると次のようなログが表示されます。
Function URL (helloWorld(us-central1)): https://us-central1-test-123456.cloudfunctions.net/helloWorld
(2) 「Function URL」をブラウザで開く。
関数の実行を確認します。
7. デプロイした関数の削除
デプロイした関数の削除の手順は、次のとおりです。
(1) Firebaseプロジェクトの「構築 → Functions」で削除する関数の「︙」から「関数を削除」を選択。
ログの確認もここでできます。
参考
次回
この記事が気に入ったらサポートをしてみませんか?