令牌到期时断开连接

时间:2014-05-15 06:47:02

标签: firebase

我正在努力使存在和令牌到期在我的应用程序中更具弹性。

我的状态表在登录时使用登录时间戳创建记录,然后当用户关闭会话时,服务器通过onDisconnect()函数记录到注销时间戳。

但是,当身份验证令牌过期时,它不会自动断开会话连接,因此我的状态指示器仍然显示用户在线。此外,如果用户然后在同一浏览器上重新连接,则看起来好像用户已登录两次,因为它仍未记录第一个会话中的onDisconnect。

如果身份验证令牌过期,会自动断开会话连接,还是我打算查看断开连接并自行断开会话?

2 个答案:

答案 0 :(得分:2)

身份验证和连接之间存在差异。您可以在/.info/authenticated上收听身份验证状态(Firebase docs)。

问题应该是当onDisconnect操作需要auth权限时 - 因为安全规则。

答案 1 :(得分:0)

所有firebase auth令牌都有一个到期时间,这将在authlistener中返回给您。在此到期时间过后,您可以断开连接。我不确定你使用的是什么语言/ API用于firebase,但是android / ios / web之间的API大致相同。