No.js: existe alguma documentação sobre o processo.variável env
Eu uso {[[0]} um pouco no meu programa, parece que esta variável não tem nada a ver com o meu programa, sem ele meu app poderia funcionar bem, também.
então como posso usar completamente o {[[0]}? Há algum documento ou tutorial sobre isso?
2 answers
Tenta esta ligação http://nodejs.org/api/process.html#process_process_env
Então você pode fazer um pequeno programa em nodeJS:
console.log(process.env)
E executá-lo
$ node myProgram.js
{ TERM_PROGRAM: 'iTerm.app',
TERM: 'xterm',
SHELL: '/bin/bash',
CLICOLOR: '1',
TMPDIR: '/var/folders/ff/59np25p96x95hpgbtsv3r6zr0000gn/T/',
Apple_PubSub_Socket_Render: '/tmp/launch-LIiu0r/Render',
OLDPWD: '/Users/hermanjunge',
USER: 'hermanjunge',
COMMAND_MODE: 'unix2003',
SSH_AUTH_SOCK: '/tmp/launch-XOMy7j/Listeners',
__CF_USER_TEXT_ENCODING: '0x1F5:0:0',
Apple_Ubiquity_Message: '/tmp/launch-jiZQH0/Apple_Ubiquity_Message',
LSCOLORS: 'ExFxCxDxBxegedabagacad',
PATH: '/Users/hermanjunge/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin:/usr/local/mysql/bin',
PWD: '/tmp',
ITERM_PROFILE: 'hermanjunge',
SHLVL: '1',
COLORFGBG: '7;0',
HOME: '/Users/hermanjunge',
ITERM_SESSION_ID: 'w1t4p0',
LOGNAME: 'hermanjunge',
LC_CTYPE: 'UTF-8',
DISPLAY: '/tmp/launch-HCtQeC/org.macosforge.xquartz:0',
_: '/usr/local/bin/node' }
Então, aprendemos que podemos obter elementos do ambiente que estamos executando nosso aplicativo. Como, por exemplo:
console.log(process.env.PWD);
Que devolve
/tmp
E assim por diante...
Não existe documentação para as variáveis de {[[0]} uma vez que se baseia no seu ambiente. (Surpreender).
Quando um sistema operacional (OS, Linux, Win, ou outro), inicia um processo está passando variáveis de ambiente que o processo pode ler.
Usando {[[0]} pode ler as variáveis que passaram para os seus programas pelo so.
Normalmente, os projectos NodeJS estão a utilizar process.env
para duas coisas:
-
As coisas que precisam de ser mudadas entre o ambiente. = = Ligações externas = = desenvolvimento, teste e produção. Você não quer se conectar ao DB real durante o desenvolvimento, e você não quer mostrar tudo
console.log
na produção.
Para manter segredo. Não é seguro manter API, fichas e chaves privadas no Git. Então você salva - o usando a variável de ambiente antes de iniciar o aplicativo.
Dica Pro: {[24] } há outra maneira. Para definir as coisas no arquivo .env
. Neste ficheiro para o seu .gitignore
, e use o módulo npmdotenv