Firebase:当用户离开页面时设置数据?
Firebase: set data when user navigates away from page?
我想知道是否可以在用户离开页面时在 firebase 数据库中设置一些数据。我知道 window.onbeforeunload 但这似乎不起作用,因为 firebase 调用在调用此方法后立即被取消(因为用户导航离开)。或者是吗?
用例是这样的:我正在构建一个聊天应用程序,用于跟踪聊天室中的用户。所以我需要知道用户何时离开聊天室 - 用户离开聊天室的方式之一是导航离开或关闭浏览器 window.
解决方法是让每个用户更新一个间隔时间(比如 10 秒)的时间戳并在客户端处理它(如果用户的时间戳超过 10 秒,他必须离开) .但这会产生大量的网络流量开销,而且效率似乎不是很高..?
PS:我的目标是 Chrome(桌面和移动),但如果我们能找到一个跨浏览器的解决方案就更好了:)
您正在寻找 onDisconnect()
在这里你可以找到如何使用它
https://firebase.google.com/docs/database/web/offline-capabilities#how-ondisconnect-works
基本上是一个在用户断开连接时调用的 Firebase 事件
它可以用来在聊天组中显示哪些用户仍然活跃,哪些用户不活跃......等等
我想知道是否可以在用户离开页面时在 firebase 数据库中设置一些数据。我知道 window.onbeforeunload 但这似乎不起作用,因为 firebase 调用在调用此方法后立即被取消(因为用户导航离开)。或者是吗?
用例是这样的:我正在构建一个聊天应用程序,用于跟踪聊天室中的用户。所以我需要知道用户何时离开聊天室 - 用户离开聊天室的方式之一是导航离开或关闭浏览器 window.
解决方法是让每个用户更新一个间隔时间(比如 10 秒)的时间戳并在客户端处理它(如果用户的时间戳超过 10 秒,他必须离开) .但这会产生大量的网络流量开销,而且效率似乎不是很高..?
PS:我的目标是 Chrome(桌面和移动),但如果我们能找到一个跨浏览器的解决方案就更好了:)
您正在寻找 onDisconnect()
在这里你可以找到如何使用它 https://firebase.google.com/docs/database/web/offline-capabilities#how-ondisconnect-works
基本上是一个在用户断开连接时调用的 Firebase 事件
它可以用来在聊天组中显示哪些用户仍然活跃,哪些用户不活跃......等等