我第一次获取FCM并将其保存到我的用户默认值。现在当用户注销时,我如何再次刷新FCM令牌?我搜索了文档和许多其他问题,但没有找到更好的解决方案。
提前谢谢。
查看以下帖子:Firebase云消息-处理注销
在@Arthur的评论中提到的安全问题解决了!
要获得新的刷新FCM令牌(强制),首先必须删除它,然后再次请求FCM令牌。删除一次后,它将始终提供一个新令牌。
要删除保存的令牌,请执行以下操作:
FirebaseMessaging.getInstance().deleteToken()
要请求FCM令牌:
Firebase.messaging.isAutoInitEnabled = true
// Get token
FirebaseMessaging.getInstance().token.addOnCompleteListener(OnCompleteListener { task ->
//On token fetch fail
if (!task.isSuccessful) {
//msg_token_failed
Log.e("Token failed", task.exception)
return@OnCompleteListener
}
// Get new Instance ID token
val newDeviceToken = task.result
Log.e("newDeviceToken", newDeviceToken)
})
因此,在您的情况下,您可以在注销时删除FCM令牌,并在登录时再次请求它。它会起作用的。
FCM令牌是一个实例ID令牌,它代表已安装的应用程序而不是已登录的用户。通常,一旦应用程序保持安装,无论登录的用户是什么,它都将具有相同的令牌。
您必须自己管理与令牌关联的用户。当用户登录时,您应该将令牌与用户的ID相关联,当用户注销时,您应该删除该关联。
我对在我的应用程序中实施Firebase云消息传递有一些疑问。 我的应用程序类似于whatsapp和facebook messenger。现在,每次有人登录时,我都会注册令牌并将其与用户关联。因此,如果有人想与用户聊天,应用程序会在数据库中搜索用户ID,我在那里找到了他的令牌。 我可以注册设备令牌,但我不确定何时应该注册。 在我的聊天中,用户通过邮件/密码注册进行注册,并且用户可以登录其他设备。
问题内容: 我在hapijs中使用jwt插件和策略。 我可以在登录用户时创建jwt令牌,并通过’jwt’策略使用同一令牌对其他API进行身份验证。 我将令牌设置为cookie,其中是令牌名称。另外,我没有将这些令牌保存在数据库中。 但是,注销时如何销毁jwt令牌? 请提出一种方法。 问题答案: JWT存储在浏览器中,因此删除令牌以删除客户端的cookie 如果您还需要在令牌到期之前从服务器端使令牌
当我想要注销时,我调用以下代码: 怎么修?
刷新页面后,我无法注销。我认为问题在于获取当前用户的方法或检查用户管理的方法。 管理员授权守卫。服务ts } 使用者服务ts 登录名。组成部分ts 使用者模型ts
我正在使用Cognito用户池对系统中的用户进行身份验证。成功的身份验证将提供一个ID令牌(JWT)、一个访问令牌(JWT)和一个刷新令牌。这里的文档清楚地提到了刷新令牌可以用于刷新访问令牌,但没有提到如何使用。我的问题是,一旦我的访问令牌过期,我如何使用存储的刷新令牌再次刷新我的访问令牌? 我搜索了JavaScript SDK,但找不到任何方法来做同样的事情。我肯定错过了什么。 我还想通过Lam
仍然存在,我可以通过它刷新访问令牌。 如果某人有G套件帐户,那么过期时间是否有特殊值,还是保持不变? 根据文档,我最多可以拥有50个令牌,那么有没有其他替代方法,这样我就可以在50个请求后获得有效的令牌。