提问者:小点点

是否有一种方法可以将数据从我的client.js传递给我的server.js,因为它会根据客户访问我的网站返回多个数据


Im试图使用socket.emit从我的game.js向我的server.js返回一个数据,但它返回多个数据取决于有多少个客户端在线。

socket.emit('win_num',{winum:numberRes,colorbg:colorbg,hash:hash,rounds:rounds,colorcode:color});

//这是我使用socket.io从client.js发出的套接字

//我将使用socket.io在我的server.js中接收到这些数据,并将其保存到我的moggo db中。不幸的是,它变成了多个数据,例如,它有一个3个客户端,它也将保存3个数据到我的moggo db中

 var myobj = { rounds: data.rounds, hash: data.hash, winnum: data.winum , colors :data.colorbg , colorCode : data.colorCode };

           dbo.collection("game").insertOne(myobj, function(err, res) {
             if (err) throw err;
             console.log("1 document inserted");
             db.close();
            });

终端输出的结果应该是“1个文档插入”,但结果是“1个文档插入”“1个文档插入”“1个文档插入”`


共1个答案

匿名用户

我已经找到了一个解决问题的方法,除非执行if语句,否则不可能从client.js返回结果或数据。如果数据重复,解决方法是在将结果/数据发送给client.js之前先知道结果/数据,因此它不会根据客户机的数量而保存。