Google Firebase管理SDK服务帐户已过期?

Rob*_*ans 4 firebase firebase-cloud-messaging firebase-admin

我正在使用google firebase admin sdk并按照说明进行设置.我通过FCM发送消息和通知,这没有问题,但最近我注意到我们的指标显示没有通知发送到客户端设备.

看看Node.js输出,我看到:

errorInfo:
   { code: 'messaging/invalid-apns-credentials',
     message: 'Request is missing required authentication credential. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.' },
  codePrefix: 'messaging' }
Run Code Online (Sandbox Code Playgroud)

请记住我最初使用的凭证文件正在运行,并且环境中没有任何变化.

查看文档除了提供firebase管理员sdk要求开始的json文件之外,没有任何关于令牌过期或处理任何类型的身份验证:

var admin = require("firebase-admin");

var serviceAccount = require("path/to/serviceAccountKey.json");

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://my-app-id.firebaseio.com"
});
Run Code Online (Sandbox Code Playgroud)

如果我登录firebase控制台并检查服务帐户,我可以看到它,我唯一的选择是生成一个新的私钥(大蓝色按钮).

我应该做些什么来让凭证保持有效?更新令牌或其他什么?在FCM设置文档中没有任何地方提到它,并且它似乎意味着如果你使用官方firebase管理员sdk则不需要任何这种性质.以下是我所遵循的指南:https://firebase.google.com/docs/admin/setup

任何人都可以权衡,如果我需要添加一些额外的代码来捕获证书到期和续订?

谢谢!

Hit*_*iya 5

如果为同一AppID创建的新推送证书包含现有应用和推送证书的捆绑ID仅在firebase中使用,那么旧版本的应用应继续使用新证书接收推送通知,无论哪个证书你用

每当您更新APNS证书时,必须推送通知的所有应用程序版本都将再次收到通知.无需为此更新应用程序.