小编Md *_*min的帖子

NodeJS 多次触发 Socket IO 事件

我正在 NodeJS 和 Android 中使用 socket.IO 构建一个测验应用程序,

quizzoStatus当我从服务器发出事件时,我遇到一个问题,该事件第一次触发一次,第二次触发两次,依此类推。

这里我附上我的代码片段

///server side: NodeJS
socket.on('sendQuizzoAnsPoints', async (data)=>{
          try {
              const obj = JSON.parse(data);
              const game = await QuizzoPlayModel.findOne({_id:obj.gameId});
              const player = await UserModel.findOne({_id: game.playerId});
              const opponent = await UserModel.findOne({_id: game.opponentId});
              if(obj.userId == game.opponentId){
                  let update = {
                      opponentPoints: game.opponentPoints + obj.points || 0,
                      opponentWA: game.opponentWA + obj.wrongAns || 0,
                  };
                  await QuizzoPlayModel.findByIdAndUpdate(obj.gameId, update).lean().exec();
                  userNamespace.to(player.socketId).emit('quizzoStatus', {
                      fullName: opponent.fullName,
                      points: game.playerPoints + obj.points,
                      wrongAns: obj.wrongAns,
                      gameId: obj.gameId
                  });
              }
              if(obj.userId == game.playerId) { …
Run Code Online (Sandbox Code Playgroud)

java android websocket node.js socket.io

3
推荐指数
1
解决办法
637
查看次数

标签 统计

android ×1

java ×1

node.js ×1

socket.io ×1

websocket ×1