如果我使用Auth#signInWithPopup进行身份验证,我会得到一个包含凭据的结果。如何在Auth#onStateChanged的观察者中获得相同的凭据?
mf98qq941#
您无法从Auth#onStateChanged获取凭据。您只能从Auth#signInWithPopup或Auth#getRedirectResult的结果中获取它们。由于这些字段仅在登录时获得一次,并且不由Firebase Auth维护或存储(例如,OAuth凭证、附加IdP数据),它们仅在登录完成时返回。
ev7lccsx2#
在使用signInWithPopup获得它们之后,使用localStorage缓存它们。
localStorage
rm5edbpk3#
你从onStateChanged得到的User对象有一个方法getIdToken来获取和重置accessToken,如果这就是你要找的。
onStateChanged
getIdToken
3条答案
按热度按时间mf98qq941#
您无法从Auth#onStateChanged获取凭据。您只能从Auth#signInWithPopup或Auth#getRedirectResult的结果中获取它们。由于这些字段仅在登录时获得一次,并且不由Firebase Auth维护或存储(例如,OAuth凭证、附加IdP数据),它们仅在登录完成时返回。
ev7lccsx2#
在使用signInWithPopup获得它们之后,使用
localStorage
缓存它们。rm5edbpk3#
你从
onStateChanged
得到的User对象有一个方法getIdToken
来获取和重置accessToken,如果这就是你要找的。