firebase:admin.auth().updateUser() 导致 auth/user-token-expired
firebase: admin.auth().updateUser() causes auth/user-token-expired
- 我成功地使用 phone-number 进行了身份验证。 (我可以检查
firebase.auth.currentUser
我是否已登录。)
- 然后我调用我的 firebase 管理路由
admin.auth().updateUser(uid, somevalues)
来设置用户显示名称和电子邮件。
- 完成此步骤后,我的用户数据更改了显示名称和电子邮件。(已在 firebase 控制台中检查)
在我的身份验证中,我 运行
firebase.auth().currentUser.reload()
获取更新的用户数据,突然出现错误 auth/user-token-expired
我仅在使用 admin.auth().updateUser(....) 后检查过我的令牌丢失了。如果我不 运行 这个命令,那么我可以毫无问题地执行 firebase.auth().currentUser.reload()。
更新:只有当我在调用 admin.auth().updateUser(....) 时设置电子邮件时,我的应用程序内的令牌才会无效。如果我只更改 displayName 令牌仍然有效。
我不确定这里的确切问题是什么,但是 reload()
将使用刷新令牌,但是刷新令牌会在 "A major account change is detected for the user. This includes events like password or email address updates." 时过期
参见:https://firebase.google.com/docs/auth/admin/manage-sessions
所以当你的刷新令牌过期时(由于'major account change'),你需要重新授权..
- 我成功地使用 phone-number 进行了身份验证。 (我可以检查
firebase.auth.currentUser
我是否已登录。) - 然后我调用我的 firebase 管理路由
admin.auth().updateUser(uid, somevalues)
来设置用户显示名称和电子邮件。 - 完成此步骤后,我的用户数据更改了显示名称和电子邮件。(已在 firebase 控制台中检查)
在我的身份验证中,我 运行
firebase.auth().currentUser.reload()
获取更新的用户数据,突然出现错误 auth/user-token-expired 我仅在使用 admin.auth().updateUser(....) 后检查过我的令牌丢失了。如果我不 运行 这个命令,那么我可以毫无问题地执行 firebase.auth().currentUser.reload()。
更新:只有当我在调用 admin.auth().updateUser(....) 时设置电子邮件时,我的应用程序内的令牌才会无效。如果我只更改 displayName 令牌仍然有效。
我不确定这里的确切问题是什么,但是 reload()
将使用刷新令牌,但是刷新令牌会在 "A major account change is detected for the user. This includes events like password or email address updates." 时过期
参见:https://firebase.google.com/docs/auth/admin/manage-sessions
所以当你的刷新令牌过期时(由于'major account change'),你需要重新授权..