在Google App Engine上validationFirebase令牌
我正在Google App Engine上开发一个应用程序。 我正在使用Cloud Endpoints在Google App Engine的后端Android应用程序之间进行通信。 Android客户端使用Firebase身份validation,并在每次调用时将Firebase令牌发送到Cloud Endpoints。
在Google App Engine中,我使用以下代码validationFirebase令牌。 我使用的是Firebase Admin SDK 4.0.3
Task authTask = FirebaseAuth.getInstance().verifyIdToken(token); try { Tasks.await(authTask); } catch (ExecutionException | InterruptedException e ) { log.severe(e.getMessage()); } FirebaseToken decodedToken = authTask.getResult();
任务的执行正在Google App Engine后端任务中运行,但遗憾的是,此后端实例未关闭,因此我超出了我的免费配额限制。 那么有人可以给我一个提示如何在令牌validation后关闭后端实例吗?
这是Firebase Admin Java SDK的一个已知问题,实际上是我们修复的难题。 目前唯一的解决方法是使用更新版本的SDK(> = 4.0.4
),该版本支持在前端实例中使用此方法(在处理后干净地关闭)。
不幸的是,在一个单独的问题中,由于依赖性不好, 4.1.0
版本中的verifyIdToken()
方法被破坏了。 因此,您必须使用4.0.4
或> = 4.1.1
。
抱歉所有的麻烦! 我们将尽快verifyIdToken()
方法。 在此期间,版本4.0.4
应该适合您。
更新
在verifyIdToken()
Java SDK的4.1.1版中修复了verifyIdToken()
方法的第二个较小问题。