Google App Engineでアプリケーションを開発しています。私は、Google App EngineのバックエンドでAndroid App間の通信にCloud Endpointsを使用しています。 AndroidクライアントはFirebase認証を使用し、すべての呼び出しでFirebaseトークンにCloud Endpointsを送信します。Google App EngineでのFirebaseトークンの確認
Google App Engineでは、次のコードを使用してFirebaseトークンを確認します。私は、タスクの実行がGoogle App Engineのバックエンドタスクで実行されているFirebase管理SDK 4.0.3
Task<FirebaseToken> authTask = FirebaseAuth.getInstance().verifyIdToken(token);
try {
Tasks.await(authTask);
} catch (ExecutionException | InterruptedException e) {
log.severe(e.getMessage());
}
FirebaseToken decodedToken = authTask.getResult();
を使用していますが、残念ながら、このバックエンドインスタンスがシャットダウンしないので、私は私の自由なクォータ制限を超えています。だから誰か私にヒントトークンの検証後にバックエンドインスタンスをシャットダウンする方法を教えてもらえますか?
これはFirebase Admin Java SDKの既知の問題であり、実際に修正するのは困難なバグです。当面の唯一の回避策は、このメソッドをフロントエンドインスタンスで使用することをサポートする最新バージョンのSDK(> = 4.0.4以上)を使用することです(処理後は正常にシャットダウンする)。 – jwngr
本当に私のために働いてくれてありがとう。しかし、最初のバージョン4.1.0を試してみましたが、私のロケール開発サーバーで亡くなりました。 Task.await(authTask)への呼び出しは戻ってこないが、バージョン4.0.4で動作した。だから今私はフロントエンドインスタンスだけを使用することができます –
Yikes、ええ、 'verifyIdToken()'の4.1.0リリースにバグがあるようです。それについて申し訳ありません!私たちはできるだけ早くそれを解決します。それまでの間は、4.0.4がうまくいくはずです。 – jwngr