avete un server:
var io = require('socket.io').listen(8000);
io.sockets.on('connection', function(socket) {
socket.emit('socket_is_connected','You are connected!');
});
Per arrestare che riceve le connessioni in entrata
io.server.close();
NOTA: Questo non chiudere le connessioni esistenti, che attendere per il timeout prima di essere chiusi. Per chiudere immediatamente, prima fare una lista di socket connessi
var socketlist = [];
io.sockets.on('connection', function(socket) {
socketlist.push(socket);
socket.emit('socket_is_connected','You are connected!');
socket.on('close', function() {
console.log('socket closed');
socketlist.splice(socketlist.indexOf(socket), 1);
});
});
Poi chiudere tutte le connessioni esistenti
socketlist.forEach(function(socket) {
socket.destroy();
});
Logic risposte da qui: How do I shutdown a Node.js http(s) server immediately?
uso 'io.close()' per smettere di ricevere connessioni in entrata. L'API è stata aggiornata da qualche parte ~ 2015 Q2 –
'io.close()' non chiude le connessioni esistenti – rocketspacer