Node.js 两次颤振接收事件中的插座
这是我在颤振中前端的代码。在前端时,我使用插座。发出,在服务器上创建两次套接字id。它发出两次信息,这是我在颤振聊天屏幕上收到的Node.js 两次颤振接收事件中的插座,node.js,flutter,sockets,dart,socket.io,Node.js,Flutter,Sockets,Dart,Socket.io,这是我在颤振中前端的代码。在前端时,我使用插座。发出,在服务器上创建两次套接字id。它发出两次信息,这是我在颤振聊天屏幕上收到的 const express = require("express"); var http = require("http"); const app = express(); const port = process.env.PORT || 5000; var server = http.createServer(app); va
const express = require("express");
var http = require("http");
const app = express();
const port = process.env.PORT || 5000;
var server = http.createServer(app);
var io = require("socket.io")(server);
//middlewre
app.use(express.json());
var clients = {};
io.on("connection", (socket) => {
console.log("connetetd");
// accept();
console.log(socket.id, "has joined");
socket.on("signin", (id) => {
console.log(id);
clients[id] = socket;
console.log(clients);
});
socket.on("message", (msg) => {
console.log(msg);
let targetId = msg.targetId;
if (clients[targetId]) clients[targetId].emit("message", msg);
});
});
server.listen(port, "0.0.0.0", () => {
console.log("server started");
});
对于后端在后端,我使用node js,在服务器上发现两个控制台日志,它们具有相同的套接字id,消息加入两次