Во многих средах (например, Heroku) и в качестве условного обозначения вы можете установить переменную среды PORT
, чтобы сообщить веб-серверу, какой порт прослушивать.
Таким образом, process.env.PORT || 3000
означает: все, что находится в переменной окружения PORT, или 3000, если там ничего нет.
Итак, вы передаете это app.listen
, или app.set('port', ...)
, и это позволяет вашему серверу принимать параметр из среды, какой порт прослушивать.
Если вы проходите 3000
с жестким кодом до app.listen()
, вы всегда слушаете порт 3000, который может быть только для вас или нет, в зависимости от ваших требований и требований среды, в которой вы работаете сервер.
журнал всегда будет говорить «слушать порт 3000» даже при прослушивании других портов. –
Внутри Node.js, поддерживающих ES6, вы можете писать еще короче: 'const {PORT = 3000} = process.env' – Julian
@PA. нет PA, если process.env.port находится в производственной среде, поэтому порт получит значение. Помните, что эта операция будет считываться слева направо и останавливаться при первом доступном значении, если таковое имеется. –