首页 > 解决方案 > Socket.io 两次发出事件

问题描述

我正在从服务器为特定客户端发出一个事件,但它发出了两次,并且 socket.on() 方法在 react.js 前端执行了两次,这破坏了我的项目。

服务器端

socket.on("returning signal", payload => {
        console.log("Returning recieverd signal from "+socket.id+" to "+payload.callerID)
        io.to(payload.callerID).emit('receiving returned signal', { signal: payload.signal, id: socket.id });
});

客户端

user.socket.on("receiving returned signal", payload => {
        console.log("Getting receiving returned signal event");
        const item = peersRef.current.find(p => p.peerID === payload.id);
        item.peer.signal(payload.signal);
});

我使用日志进行调试和“获取接收返回的信号事件”此消息在浏览器控制台上打印两次。

一个月了,求大神帮忙!!!

标签: node.jsreactjssocket.io

解决方案


推荐阅读