【问题标题】:Same time, two client send answer to server nodejs express (use socket.io)同时,两个客户端向服务器 nodejs express 发送答案(使用 socket.io)
【发布时间】:2017-06-20 12:49:56
【问题描述】:

我使用 nodejs 和 socket.io 编写服务器游戏
在这个游戏中,我有两个客户端(玩家),两个玩家将加入房间,服务器将发送 1 个问题和 4 个答案。当第一个玩家向服务器发送正确答案时,第二个玩家无法向客户端发送答案(或服务器不接受答案)。
我有问题
1.服务器如何知道这个问题,第一个玩家正确回答而不接受第二个玩家的回答?
2. 如果同一时间,当服务器检查第一个玩家的答案时,第二个玩家发送答案。如果两个玩家正确回答,如何服务器检查谁获胜

【问题讨论】:

    标签: node.js express socket.io


    【解决方案1】:

    我对这个问题有一个假设。根据我的观点,当服务器开始监听客户端连接时......

    1. 将客户端数量限制为两个。

    2. 一旦与两个客户端建立连接,将缓冲区中的问题发送给两个客户端并设置标志 = 0

    3. 发送问题后进入循环以从任何客户端获取回复。

    4. 在成功接受答案后检查其正确性,如果其匹配,则设置标志 = 1,并中断将停止接受来自客户端的答案的循环。

    在这个循环中使用这个标志可以帮助服务器知道不再接受答案。

    对于第二个问题,我想说,如果他们两个同时回答,即第二个客户甚至在检查第一个客户答案的正确性之前回答,可能会导致平局。虽然在这种情况下我没有任何明确的假设。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-15
      • 1970-01-01
      • 2020-04-16
      • 2014-08-17
      • 2018-10-19
      • 2013-09-09
      • 2019-04-23
      • 1970-01-01
      相关资源
      最近更新 更多