Я пытаюсь создать тест, используя LearnBoost's socket.io и node-websocket-client. Связь между клиентом и сервером работает отлично. После завершения обмена данными я закрываю и клиент, и сервер. Однако программа зависает, ожидая какого-то неизвестного обратного вызова. Два вопроса:
var connect = require('connect'),
io = require('socket.io'),
WebSocket = require('websocket-client').WebSocket;
var port = 7111;
var server = connect.createServer();
var socket = io.listen(server);
socket.on('connection', function(client) {
client.send('Welcome!');
client.on('message', function(message) {
console.log(message);
});
client.on('disconnect', function() {
console.log('closing');
server.close();
});
});
server.listen(port, function() {
var ws = new WebSocket('ws://localhost:' + port + '/socket.io/websocket');
ws.onmessage = function(message) {
console.log(message.data);
};
setTimeout(function() {
ws.send('~m~3~m~Yo!');
ws.close();
}, 10);
});
EDIT: изменил имя переменной WebSocket на ws
, чтобы избежать путаницы