首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Socket.io保存动态房间并保持客户端连接节点JS

Socket.io保存动态房间并保持客户端连接节点JS
EN

Stack Overflow用户
提问于 2016-07-27 19:28:41
回答 1查看 2.2K关注 0票数 2

我对socket.io相当陌生。

我浏览了他们的文档页面,并在这里发表了一些文章,但我仍然坚持我的方法。我正在计划一个测试应用程序,管理员可以为每个主题创建动态的空间,用户可以加入。管理员会发布这个问题,用户在PDA锁定答案选项卡之前有10秒钟的时间来回答。管理员将在稍后通过管理CP发布答案。

现在我的问题。

  1. 我们是否可以从管理面板创建动态房间,并将房间名称存储在数据库中,以便客户机稍后可以加入同一个房间?
  2. 如何保持客户端的联系,直到稍后发布答案?不让客户被切断连接。//类似于whatsapp group
  3. 即使客户端断开了连接,我也可以将存储在DB中的房间元数据加入客户端吗?
  4. 如果10个客户端回答我的问题,服务器可以解析他们的数据并用他们的ID存储在DB中吗?

感谢你在这方面的任何帮助。我不知道该怎么做。我学了很多教程,但没能达到我所需要的。很抱歉这么长的帖子,但是任何线索都会对我有帮助的

提亚

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-28 01:52:02

  1. 我们是否可以从管理面板创建动态房间,并将房间名称存储在数据库中,以便客户机稍后可以加入同一个房间?

可以,停那儿吧。

  1. 如何保持客户端的联系,直到稍后发布答案?不让客户被切断连接。//类似于whatsapp group

只要原始页在浏览器中是活动的,Socket.io就会自动保持连接活动。如果连接丢失,它将重新连接。如果用户转到另一个没有socket.io代码的页面,那么就没有连接。当客户端通过socket.io进行连接时,连接将在给定的页面中建立。如果您总是希望有一个连接,只要用户在您的站点上,您可以通过socket.io连接所有页面。

  1. 即使客户端断开了连接,我也可以将存储在DB中的房间元数据加入客户端吗?

如果客户端不再连接到您的站点,那么您就没有什么可做的了,因为您没有任何与该用户通信的能力。连接是由客户驱动的。客户端必须建立到服务器的连接。当客户端重新连接时,您可以在数据库中查找它们的状态,以便重新连接到某些房间,或者查找它们断开连接时可能丢失的任何消息,并将它们发送到新重新连接的客户端。但是,这取决于您存储该信息,并知道如何查询它以获得正确的信息来发送新连接的客户端。

  1. 如果10个客户端回答我的问题,服务器可以解析他们的数据并用他们的ID存储在DB中吗?

是的,你可以编写代码来完成这个任务。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38621612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档