我正在构建一个聊天功能(网络应用程序),用户在其中有一个他可以聊天的朋友列表。朋友可以在线或离线,比如Facebook。因为,应用程序是基于REST apis构建的,所以我不会保存会话,并且所有身份验证都是无状态的。
所以我的问题是,如何在列表中知道谁在线或离线?实现这个的最佳方法是什么?
答案 0 :(得分:1)
通常,对于聊天应用程序,您只需在一段时间后从客户端向服务器发送消息,如果未收到消息,则用户处于脱机状态。
我不是Java开发人员,但建议您查看WebSockets
聊天内容。希望它有所帮助。
答案 1 :(得分:0)
创建两个不同的频道类别,一个用于朋友,另一个用于实际消息。然后,您可以在朋友加入/离开时向朋友频道发送更新。
每个客户端将有两个订阅
例如/friends/xxx
和/chatMessages/xxx
其中xxx是用户ID(或者可能是聊天室的名称)