1
次のコードは、NodeJSでソケットコール用に実装されているバックエンド用のコードです。ソケット通知を特定のユーザに送信
const socket = require('socket.io');
let Users = [];
module.exports = function (server) {
const io = socket.listen(server);
io.sockets.on('connection', function (socket) {
socket.on('socket-call', function (userId) {
Users[userId] = socket.id;
socket.broadcast.emit('socket-call', {msg: 'login call'});
});
});
};
idがフロントエンドから渡された特定のユーザーに通知メッセージを送信します。しかし、それはすべてのユーザーに通知を送信します。
私は次のように試しましたが、動作しません。解決策を教えてください。
socket.broadcast.to(Users[userId]).emit('socket-call', {msg: 'login call'});
で試してみてください、いくつかの限定された、すぐにヘルプを提供可能性がある、このコードスニペットをいただき、ありがとうございます。 *なぜ*これが問題の良い解決策であるかを示すことによって[適切な説明は長期的価値を大幅に改善する](// meta.stackexchange.com/q/114762/350567)、将来的にはより有用になる他の同様の質問の読者。あなたの前提を含め、あなたの答えを[編集]して説明を加えてください。 – iBug