【发布时间】:2018-05-01 18:10:26
【问题描述】:
您好,我想发送到我存储在变量中的特定套接字:
socket.on('register', () => {
clintToEmitTo = socket.id;
console.log('clint To Emit To Socket ID ', clintToEmitTo);
});
我知道要发送到特定的套接字,我需要执行以下操作:
socket.to(clintToEmitTo).emit('getName', (response) => {
console.log(response);
});
但是,我希望能够使用回调或确认,这就是我得到的:
(node:1956) UnhandledPromiseRejectionWarning: 未处理的承诺 拒绝(拒绝 id:2):错误:不支持回调 广播(节点:1956)[DEP0018]
注意:emit 事件可以由另一个客户端事件触发,这就是我没有在注册事件上添加回调的原因
【问题讨论】:
-
emit期望某个对象作为第二个参数,您传递的是function,这可能是问题吗?尝试将函数回调作为第三个参数。 -
这没有什么区别,你仍然会得到同样的错误。你是什么意思(将函数回调作为第三个参数)
-
socket.to(clintToEmitTo).emit('getName', '', (response) => { console.log(response); }); -
是的,出现同样的错误
标签: javascript node.js sockets websocket socket.io