【问题标题】:FCM Token is invalidating for chrome frequentlyFCM 令牌经常对 chrome 无效
【发布时间】:2017-05-20 02:46:08
【问题描述】:

FCM 令牌经常对 chrome 无效,但它对 firefox 有效。 我已经实现了onTokenRefresh() 回调。 这是我的实现

messaging.onTokenRefresh(function () { console.log("refresh token called(webpush)"); messaging.getToken().then(function (refreshedToken) { console.log('Token refreshed.', refreshedToken); // post data to db }); });

如何检查上述实现是否正常工作。无法将刷新的令牌保存到我们的数据库中。

【问题讨论】:

  • 我认为您可以直接在另一个函数中调用此方法,例如函数f(){ ...},您可以在自定义事件上调用f()。这样您就可以检查您的代码是否正常工作。 messaging.onTokenRefresh 的真正调用不应该是您关心的问题,由 google 在需要时调用它。

标签: javascript google-chrome push-notification firebase-cloud-messaging web-push


【解决方案1】:

目前未使用 on token refresh 回调。但它将在未来的更新中。

如果你想检查你的逻辑,你可以拉出回调并直接调用 i

const onRefreshCb = function() {
  messaging.getToken()......
};

messaging.onTokenRefresh(onRefreshCb);

要进行测试,您只需调用 onRefreshCb() 来测试您的逻辑,如果您想确保获得新令牌,请使用 deleteToken

【讨论】:

  • 感谢您的帮助。 FCM Token 经常对 chrome 无效,但它对 firefox 有效。请建议
  • @Gaunt Face 问题是当 FCM 在后台使令牌无效时。然后浏览器变得无法访问无法远程调用 onRefreshCb 的服务器。
  • FCM 当前不会使令牌失效。当它最终使令牌无效时,它不会使其无效,直到浏览器有机会触发 onTokenRefresh callbak。注意:我在 Google 从事 FCM 库的工作。
猜你喜欢
  • 1970-01-01
  • 2019-10-15
  • 2020-09-24
  • 2019-05-31
  • 2023-04-03
  • 2020-04-11
  • 1970-01-01
  • 2022-10-05
  • 2021-05-18
相关资源
最近更新 更多