Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ExpressJS: normalizePort function is really necessary?

I used express-generator for a new project.

In file bin/www exists the function normalizePort:

...

var http_port = 3000;

var port = normalizePort(process.env.PORT || http_port);
app.set('port', port);

...

// Normalize a port into a number, string, or false.

function normalizePort(val) {
  var port = parseInt(val, 10);

  if (isNaN(port)) {
    // named pipe
    return val;
  }

  if (port >= 0) {
    // port number
    return port;
  }

  return false;
}

Question:

Is really necessary the function or I can will simply?

app.set('port', parseInt(process.env.PORT, 10));

The function is generic and avoid possibles errors?

I use dotenv and dotenv-safe module for load my file .env

like image 666
alditis Avatar asked Sep 14 '25 02:09

alditis


1 Answers

normalizePort doesn't quite behave like parseInt. You can pass an string of (non-numeral) text into it and get that same string back, which may be necessary in some very rare cases. If you're passing in all the values yourself through the life of the project, you probably don't need either normalizePort or parseInt.

like image 168
R. Lance Hunter Avatar answered Sep 16 '25 17:09

R. Lance Hunter