Domanda nodemon + express, ascolta port =?


Creo un progetto nodo semplice usando express:

npm install -g express-generator
express test
cd test/ && npm install
PORT=3000 npm start

In questo modo l'app di test è attiva e funzionante sulla porta 3000. Grande. Ora mi piacerebbe usare nodemon per eseguire questo progetto. L'ho installato:

npm install -g nodemon

Nel README di gihub viene eseguito allo stesso modo del nodo. Questo è un po 'confuso, perché è il nuovo modo di iniziare il nodo npm start non node. Così ho provato:

$ PORT=3000 nodemon ./app.js 
13 May 23:41:16 - [nodemon] v1.0.18
13 May 23:41:16 - [nodemon] to restart at any time, enter `rs`
13 May 23:41:16 - [nodemon] watching: *.*
13 May 23:41:16 - [nodemon] starting `node ./app.js`
13 May 23:41:16 - [nodemon] clean exit - waiting for changes before restart

Ma quando provo a connetterti, non c'è niente lì. L'ho confermato con:

lsof -i TCP:3000

Che non ha restituito nulla Normalmente (con npm start) restituisce:

COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
node    18746 user   10u  IPv4 433546      0t0  TCP *:3000 (LISTEN)

Qualcuno può dire cosa c'è di sbagliato qui? Come è possibile far sì che l'app ascolti sulla porta specificata con nodemon?

la mia configurazione:

npm -v
1.3.21
node -v
v0.10.24
nodemon -v
v1.0.18
express -V
4.2.0

44
2018-05-14 06:54


origine


risposte:


in package.json

  "scripts":{
    // "start": "node ./bin/www"
    "start": "nodemon ./bin/www"
   }

il seguente sarebbe ora equivalente:

$ npm start
$ nodemon ./bin/www

93
2018-05-14 08:20



Funziona anche: includi questo nel tuo app.js (fa la stessa cosa che ha detto neolivz4ever)

app.set('port', process.env.PORT || 3000);
var server = app.listen(app.get('port'), function() {
  console.log('Express server listening on port ' + server.address().port);
});

10
2017-07-18 16:35



anche tu usa definire il tuo per nodemon:

$ nodemon --debug ./bin/www 3000


3
2018-03-03 10:00



Inoltre, alcune volte, la porta è appena in uso. Se le altre soluzioni non funzionano, prova a cambiare la porta. Potrebbe essere in uso per qualche altra istanza di nodo.


0
2017-08-29 10:39