【发布时间】:2015-09-23 23:13:36
【问题描述】:
我在向特定客户端发送数据时遇到问题。
服务器端
var io = require('socket.io').listen(app.listen(app.get('port')));
io.sockets.on('connection', function (socket) {
socket.on('onHabboConnection', function (data) {
socket.id = data.id;
socket.join(data.id);
io.sockets.in(data.id).emit('onHabboConnected');
});
socket.on('onHabboConnected', function (data) {
console.log("<" + socket.id + "> " + data.username + " has joined the game.");
});
});
客户端
var socket = io.connect('http://localhost:3000');
$( document ).ready(function() {
socket.emit('onHabboConnection', { id:'<%= user.id %>' });
});
socket.on('onHabboConnected', function () {
console.log("WORKING" );
socket.emit('onHabboConnected', { username: '<%= user.username %>'});
});
io.sockets.in(data.id).emit('onHabboConnected');
我尝试了所有方法,但它们都抛出错误。 这个不会抛出错误但什么都不做!
【问题讨论】:
-
“我尝试了所有方法,但它们都抛出错误。” 你尝试过 socket.emit 吗?如果是这样,请列出您尝试失败的所有其他“方法”及其错误,以减少猜测。
-
socket.emit()适用于这种情况。抛出了什么错误? -
io.sockets.in(data.id).emit('onHabboConnected');没有发送给客户端。
-
BUMP,有人请吗?