NodeJS a parametry příkazové řádky

Někdy se stane, že potřebujete spustit svou NodeJS aplikaci s nějakými parametry na příkazové řádce. Těmi paramytry může být cokoliv: číslo portu, na kterém váš server poběží, název konfiguračního souboru, ze kterého se budou načítat další informace, nebo přihlašovací jméno a heslo.

node script.js --port 3000 --config ./moje-nastaveni.json --login pepa

Pak můžete skrze process.argv získat přístup k celému příkazovému řádku a v proměnné argv bude v poli vše: na 0 pozici node, 1. pak scrip.js, 2. bude –port, atd.
To je dobrý, ale ne dost. Budete se muste postarat o nějaké pársování a to je opruz.

NodeJS a knihovna optimist

O tohle pársování se za vás postará knihovna optimist.
Váš kód pak může vypadat následovně:

var argv = require('optimist).argv;
console.log(argv);

Po spuštění následujícího kódu:

node script.js --port 3000 --config ./moje-nastaveni.json --login pepa

pak v proměnné argv získáte JSON objekt, který obsahuje jadnotlivé načtené proměnné:

{
  '$0': 'node script.js',
  'port': 3000,
  'config': './moje-nastaveni.json',
  'login': 'pepa'
}

nodejs theoptimist