同时,两个客户端向服务器nodejs发送应答(使用socket.io)

时间:2017-02-03 07:54:59

标签: node.js express socket.io

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

1 个答案:

答案 0 :(得分:1)

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

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

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

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

  5. 成功接受答案检查的正确性,如果匹配,则设置flag = 1,并打破循环,停止接受来自客户端的答案。

  6. 在此循环中使用此标志可以帮助服务器知道不再接受任何答案。

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