我正在构建一个即时更新的消息应用程序。然而,如果我通过另一个谷歌账号登录(该应用程序托管在heroku上)并以userB身份发布一条消息,那么userA在他们刷新页面之前不会在他们的屏幕上看到这条消息。
每条消息都会发布并存储在firebase中。到目前为止,我唯一的解决方案需要使用javascript setInterval方法,并且每3-5秒从数据库中提取一次。这是有效的,但它导致应用程序变得非常慢,滞后和糟糕的体验。欢迎任何指点/提示
发布于 2017-03-27 18:33:01
你使用的是Firebase,它的一个主要功能是实时数据库。如果您的JSON数据库中有任何更改,Firebase将自动通知您。不需要在interval basic中发送请求。
你可以参考Zero to App: Develop with Firebase - Google I/O 2016,它也是一个由谷歌人制作的消息应用程序演示。
您可以在Github中找到sample source code来实时发送和接收消息。
发布于 2017-03-27 15:19:09
有很多方法可以做到这一点。通常,您希望在收到新消息后收到服务器的通知,而不必每隔X秒ping服务器一次。
你可以看看这些:
当你已经在使用
这应该会把你引向正确的方向。
https://stackoverflow.com/questions/43039981
复制相似问题