Можете ли вы заставить некоторый код не запускаться при развертывании сервера

Заранее прошу прощения за мой плохой английский

Морган потрясающе развивается и видит, что происходит. Но что мне делать, когда я хочу развернуть свой сервер и не хочу видеть всех, кто включен.
Как сделать так, чтобы что-то не выполнялось при развертывании? а должен ли морган быть внешним скриптом?

2 ответа

Решение

Вы, вероятно, захотите использовать переменную окружения, особенно NODE_ENV, чтобы сообщить своему серверу, в какой настройке он находится. Установите его в "развитие", когда вы работаете локально, и "производство" на вашем сервере. Вы можете получить к нему доступ в своем приложении Node как process.env.NODE_ENV, Если вы не хотите, чтобы Morgan запускался в производство, сделайте что-то вроде этого:

if(process.env.NODE_ENV !== 'production') {
  app.use(morgan());
}

Чтобы вручную установить env var при запуске сервера, запустите как NODE_ENV=development node app.js,

Вы должны убедиться, что переменная установлена ​​на что-то. Вы можете по умолчанию установить "развитие" следующим образом:

process.env.NODE_ENV = process.env.NODE_ENV || 'development';

Вы можете установить переменную среды с именем NODE_ENV. Если вы гуглите, вы можете найти обширную информацию об этом.

Например:

process.env.NODE_ENV = "production";

if(process.env.NODE_ENV == "development") {
  console.log("This log will only be visible in development environment");
}
Другие вопросы по тегам