2017-12-09 30 views
1

TypeScript(Nest.js)アプリケーションでFirebase Admin SDKをインポートしようとしています。TypebaseからFirebase Admin SDKの初期化に失敗しました

let serviceAccount = require("../../creds.json"); 
console.log(serviceAccount); 

const firebase = require("firebase"); 
firebase.initializeApp(environment.firebase); 

admin.initializeApp({ 
    credential: admin.credential.cert(serviceAccount), 
    databaseURL: "projectid" 
}); 

しかし、アプリケーションを作成しようとすると、次のエラーが発生します。

ERROR in ./node_modules/@google-cloud/firestore/src/v1beta1/firestore_client.js 
Module not found: Error: Can't resolve './firestore_client_config' in '/home/jaybell/trellis-server/trellis/node_modules/@google-cloud/firestore/src/v1beta1' 
@ ./node_modules/@google-cloud/firestore/src/v1beta1/firestore_client.js 28:17-53 
@ ./node_modules/@google-cloud/firestore/src/v1beta1/index.js 
@ ./node_modules/@google-cloud/firestore/src/index.js 
@ ./src/server/main.server.ts 

ERROR in ./node_modules/google-gax/lib/operations_client.js 
Module not found: Error: Can't resolve './operations_client_config' in '/home/jaybell/trellis-server/trellis/node_modules/google-gax/lib' 
@ ./node_modules/google-gax/lib/operations_client.js 30:17-54 
@ ./node_modules/google-gax/index.js 
@ ./node_modules/@google-cloud/firestore/src/v1beta1/index.js 
@ ./node_modules/@google-cloud/firestore/src/index.js 
@ ./src/server/main.server.ts 

ERROR in ./node_modules/google-gax/index.js 
Module not found: Error: Can't resolve './package' in '/home/jaybell/trellis-server/trellis/node_modules/google-gax' 
@ ./node_modules/google-gax/index.js 65:18-38 
@ ./node_modules/@google-cloud/firestore/src/v1beta1/index.js 
@ ./node_modules/@google-cloud/firestore/src/index.js 
@ ./src/server/main.server.ts 

私は、管理SDKとGoogleのクラウドのfirestoreパッケージ間の任意の接続を検索しようとしたが、何もアップ示しませんでした。 Firestoreライブラリをインクルードして初期化しようとしましたが、このエラーはまだ表示されます。

私は

import * as admin from 'firebase-admin'; 

とfirebaseドキュメントに

yarn add firebase-admin 

してインストールした後に、私はfirebase管理SDKはfirestoreと通信することができます知っているように、正確に管理SDKを含むが、それがなぜがわかりません初期化中にこのエラーがスローされます。

コンパイルされたフロントエンドとバックエンドの両方のコンポーネント、角度サイトを提供するノードサーバーの両方を含む私のプロジェクトと関係するかもしれません。 firebase admin sdkがフロントエンドでコンパイルされてこのエラーが発生する可能性がありますか?

どのような考えですか?

答えて

1

私は自分の問題を解決したかもしれないと思う。

firebase-admin-sdkがビルドプロセスに組み込まれていて、失敗する原因となっていました。

修正: install https://github.com/liady/webpack-node-externals これをwebpack.config.tsファイルに追加し、node_modulesフォルダを除外します。

は、私はその後のgcloud経由で認証しなければならなかった、ここでの手順: Could not load the default credentials? (Node.js Google Compute Engine tutorial)

そして今、ビルドと作品を提供しています。

関連する問題