Reactjs Firebase-一小时后失去身份验证会话

Reactjs Firebase-一小时后失去身份验证会话,reactjs,firebase,redux,firebase-authentication,Reactjs,Firebase,Redux,Firebase Authentication,我将Firebase auth添加到我的Reactjs(和Redux)web应用程序中,一切都很完美。我正在使用电子邮件/密码登录,并调用firebase.auth().signInWithEmailAndPassword,它在重新加载、选项卡更改等情况下持续存在。但是,大约一个小时后,auth会话似乎过期,currentUser设置为null。感觉Firebase控制台中应该有一个设置,但在搜索之后,我什么也找不到 任何帮助都将不胜感激 我遇到了完全相同的问题,onAuthStateChang

我将Firebase auth添加到我的Reactjs(和Redux)web应用程序中,一切都很完美。我正在使用电子邮件/密码登录,并调用firebase.auth().signInWithEmailAndPassword,它在重新加载、选项卡更改等情况下持续存在。但是,大约一个小时后,auth会话似乎过期,currentUser设置为null。感觉Firebase控制台中应该有一个设置,但在搜索之后,我什么也找不到


任何帮助都将不胜感激

我遇到了完全相同的问题,
onAuthStateChanged
总是在1小时后触发,并且用户断开连接。而
firebase.auth().currentUser.getIdToken(true)
也没有帮助,都是因为。。。必须在Google控制台中为我的Google API密钥启用令牌服务API。问题解决了

是用户会话即将到期还是令牌?ID令牌在一小时后过期(无法更改),但会在幕后自动刷新。用户会话不会在一小时后过期。看,我认为无论出于什么原因,令牌都不会自动刷新。该链接建议调用firebase.auth().currentUser.getToken手动刷新,但我不能这样做,因为currentUser在一小时后为null。我想我可以设置一个55分钟的计时器,并以这种方式刷新它,但它似乎真的很粗糙。。。您知道为什么不刷新吗?用户不应该在ID令牌过期时注销。这里还有别的事情。如果发生重大帐户更改(用户已删除、密码更改、电子邮件更改、密码重置等),则用户将注销。您是否使用
firebase.auth().onAuthStateChanged
侦听器来确定用户的初始状态?我昨晚用控制台日志设置了
firebase.auth().onAuthStateChanged
,但这没有太大帮助。登录后,它立即记录看似正常的登录状态,其中包含电子邮件、refreshToken、uid等。刷新页面会记录相同的内容,但一小时后,日志只返回“null”。在此之后,刷新仍然返回null,并且获取用户数据的唯一方法是注销并重新登录。Firebase令牌默认设置为最长可使用1小时。这是我的解决方案!非常感谢你!