Instagram OAuthをFirebaseにNode.jsバックエンド経由で接続しようとしています。私は、access_token
を含むInstagramアカウントデータを正常に取得しました。これは、firebase-admin
のcreateCustomToken
と私のNode.jsバックエンドで交換したいです。私の目的は、カスタムトークンを生成して、私のAngularアプリケーションがFirebaseアプリケーションにsignInWithCustomToken(token)
を実行できるようにすることです。 JSONオブジェクトをコンソールに印刷できるので、Instagramからのデータの取得に問題はありません。Firebase Admin InitializeApp()でINVALID_APP_OPTIONSエラーが発生しました
access_token
をFirebaseカスタムトークンに交換するときに問題が発生します。
私はNode.jsのためのFirebase管理ページからthis guideを踏襲していると私はここで
throw new error_1.FirebaseAppError(error_1.AppErrorCodes.INVALID_APP_OPTIONS, "Invalid Firebase app options passed as the first argument to initializeApp() for the " +
Error: Invalid Firebase app options passed as the first argument to initializeApp() for the app named "[DEFAULT]". The "credential" property must be an object which implements the Credential interface.
以下のエラーメッセージが直面していますが、関連する問題についての私のコードです。
// authService.js
var fbAdmin = require('firebase-admin');
var serviceAccount = require('./key/key.json');
function createFirebaseToken(instagramID) {
// I copy & pasted this var from other class
var config = {
apiKey: "MY_FIREBASE_APIKEY",
authDomain: "MY_APP.firebaseapp.com",
databaseURL: "https://MY_APP.firebaseio.com",
storageBucket: "MY_APP.appspot.com",
};
console.log(fbAdmin.credential.cert(serviceAccount)); // serviceAccount successfully printed on console
// Error appears when executing this function
fbAdmin.initializeApp({
serviceAccount: fbAdmin.credential.cert(serviceAccount),
databaseURL: config.databaseURL
});
const uid = `instagram:${instagramID}`;
// Create the custom token.
console.log(uid);
return fbAdmin.auth().createCustomToken(uid);
}
私のノードアプリはfirebase-admin
への接続を初期化することができないように見えますが、私はこれらの技術上の初心者ですと私は考えに解決策を持っていません。ご意見をお聞かせください。