Je cherche à changer les ports sur lesquels mon application express fonctionne.
J'ai essayé:
server.on('close', function() {
server.listen(3000);
});
server.listen(8080);
server.close();
Cela retourne une erreur node.js cryptique. J'utilise le nœud v0.4.11, je suis en train de mettre à niveau maintenant pour voir si cela le corrige.
MODIFIER Voici l'erreur:
Assertion failed: (!io->watcher_.active), function Set, file ../src/node_io_watcher.cc, line 160.
Merci, Matt
Le problème est que .listen
est asynchrone. En appelant .close
immédiatement après avoir appelé .listen
, vous le fermez avant son ouverture.
Essayez plutôt cela.
server.listen(8080, function() {
server.close();
});
Grâce à @ aymericbeaumet , l'extrait de code suivant fonctionne avec Express 4:
var app = express();
var server = app.listen(8080, function() {
console.log('Listening :)');
server.close(function() { console.log('Doh :('); });
});