
Next.jsのNodeでFirebaseのFirestoreを使う方法。serviceAccountKey.jsonを作る
Next.jsでは、/apiとかgetServerSidePropsでNode.jsを使えますよね。
そこで、FirebaseのFirestoreを使いたいわけです。
FirebaseのFirestoreは、ブラウザ側のJSでも使えますけど、クライアント側でデータ通信したくないですよね。
だから、Nodeでセットアップして、Nodeで使おうよって話です。
手順は簡単です。
Firebase Admin SDK
まず、NodeでFirebaseを使うには、Firebase Admin SDKが必要です。
だから、これを使う。
yarn add firebase-admin
つぎ。設定ファイルのJsonをインストールします。そのやり方は、こちらの記事に書いてあるのだが、参考にするのはここ。
サービス アカウント用の秘密鍵ファイルを生成するには:
- Firebase コンソールで、[設定] > [サービス アカウント] を開きます。
- [新しい秘密鍵の生成] をクリックし、[キーを生成] をクリックして確定します。
- キーを含む JSON ファイルを安全に保管します。
この手順で、Firebaseのコンソールを開くと、下記の画像のような秘密鍵を生成できる画面を見つけられるはず。
新しい秘密鍵を生成して、Jsonをダウンロードして、プロジェクトのディレクトリに放り込む。
一応、gitignoreとかでPushしないようにしておくのがオススメです。
で、あとは簡単です。Node.jsが動く場所で、下記のようにすれば、NodeでFirebase通信できます。
下記はFirebaseのFirestoreへデータを追加するコードです。