node.js - run - require('' express '') in node js
Detenga y reinicie programáticamente los servidores express(para cambiar puertos) (2)
El problema es que .listen
es asíncrono. Al llamar .close
inmediatamente después de llamar a .listen
, lo está cerrando antes de que se haya abierto.
Intenta esto en su lugar.
server.listen(8080, function() {
server.close();
});
Estoy buscando poder cambiar básicamente los puertos en los que se ejecuta mi aplicación Express.
He intentado:
server.on(''close'', function() {
server.listen(3000);
});
server.listen(8080);
server.close();
Esto devuelve un error de node.js críptico. Estoy ejecutando el nodo v0.4.11, estoy actualizando ahora para ver si eso lo corrige.
EDIT Aquí está el error:
Assertion failed: (!io->watcher_.active), function Set, file ../src/node_io_watcher.cc, line 160.
Gracias mate
Gracias a @aymericbeaumet , el siguiente fragmento de @aymericbeaumet funciona con Express 4:
var app = express();
var server = app.listen(8080, function() {
console.log(''Listening :)'');
server.close(function() { console.log(''Doh :(''); });
});