我的问题是Firebase chat - removing old messages
的扩展我构建了一个聊天室,在Firebase中保留线性消息流。在上面的问题中,答案显示了如何使用优先级删除旧邮件(因此删除了超过2天的邮件)。
在我的聊天室中,我想要删除超过两天的邮件,但仅限于超过250封邮件的邮件。这样,即使有些消息超过两天,也总会有250条消息。
即使与限制相结合,我也无法找到一种使用优先级的简单方法。
我尝试通过保留所有邮件的内部列表,并让客户端删除旧邮件超过250条,但遇到问题,因为多个客户端可能会尝试同时删除邮件。有趣的是,这导致浏览器中的Firebase代码无响应,要求用户强制退出浏览器(这种情况发生在Firefox,Chrome,Safari甚至Opera上)。毋庸置疑,我正在寻找更好的解决方案。