https://a.storyblok.com/f/270183/1368x665/bf41915afb/25feb_dev-blog_java-enviormental-variables.png

Como usar variáveis de ambiente em JavaScript com o Dotenv

Publicado em February 18, 2025

Tempo de leitura: 2 minutos

Introdução

Inserir informações confidenciais diretamente nos arquivos-fonte é como escrever sua senha em um post-it e deixá-lo no seu laptop à vista de todos — não é uma boa ideia! Uma abordagem melhor e mais segura é usar variáveis de ambiente, que armazenam com segurança dados confidenciais, como chaves de API e senhas, fora da sua base de código.

Nem todas as estruturas de JavaScript importam automaticamente as variáveis de ambiente; portanto, usar um módulo como dotenv —uma biblioteca leve e sem dependências—é uma boa prática para simplificar esse processo. O dotenv lê as variáveis definidas em um .env arquivo e as carrega no objeto process.env , que atua como um repositório global para variáveis de ambiente na forma de pares chave-valor (todos os valores salvos como strings). Essa configuração garante que suas informações confidenciais fiquem acessíveis de forma segura em toda a sua aplicação, sem expô-las no código.

Agora, vamos ver como usar variáveis de ambiente com o dotenv por meio de um exemplo prático: enviando uma mensagem pelo WhatsApp usando a Messages API for Vonage!

Instalar o Dotenv

Execute os seguintes comandos no seu terminal para inicializar o npm, instalar o dotenv e inicializar o repositório git do projeto:

// initialize npm on the project
npm init -y

// install dotenv
npm install dotenv --save

// initialize git repo
git init

Use o Dotenv

Para começar a usar o dotenv, crie um .env arquivo no diretório raiz do seu projeto. Esse arquivo conterá suas variáveis de ambiente. Você pode acompanhar o tutorial completo em enviar uma mensagem pelo WhatsApp para encontrar esses valores no seu aplicativo Vonage:

VONAGE_API_KEY="your-api-key"
VONAGE_API_SECRET="your-api-secret"
VONAGE_APPLICATION_ID="your-application-id"
VONAGE_PRIVATE_KEY="path/to/your/private.key"
TO_NUMBER="recipient-phone-number"
WHATSAPP_NUMBER="sender-phone-number"

Observação: se sua variável contiver espaços, coloque-a entre aspas.

Envie uma mensagem pelo WhatsApp com a Messages API da Vonage

Em seguida, crie um send-whatsapp-message.js arquivo.

Adicione esta linha como ponto de entrada do aplicativo para configurar o dotenv:

require('dotenv').config();

Adicione esta linha e execute-a; depois, remova-a assim que confirmar que o dotenv está funcionando:

console.log(process.env);

Para acessar variáveis de ambiente no Node.js, use process.env seguido do nome da variável. Por exemplo:

const VONAGE_APPLICATION_ID = process.env.VONAGE_APPLICATION_ID;

Adicione o código restante:

// initialize dependencies 
const VONAGE_APPLICATION_ID = process.env.VONAGE_APPLICATION_ID;
const VONAGE_PRIVATE_KEY = process.env.VONAGE_PRIVATE_KEY;

const TO_NUMBER = process.env.TO_NUMBER;
const WHATSAPP_NUMBER = process.env.WHATSAPP_NUMBER;

const { Vonage } = require('@vonage/server-sdk');
const { WhatsAppText } = require('@vonage/messages');

const vonage = new Vonage({
  applicationId: VONAGE_APPLICATION_ID,
  privateKey: VONAGE_PRIVATE_KEY,
});

// the logic
vonage.messages.send(
  new WhatsAppText({
    text: 'This is a WhatsApp Message text message sent using the Messages API',
    to: TO_NUMBER,
    from: WHATSAPP_NUMBER,
  }),
)
  .then((resp) => console.log(resp.messageUUID))
  .catch((error) => console.error(error));

Agora, se você executar o código, ele deverá acessar suas variáveis de ambiente para enviar a mensagem:

node send-whatsapp-message.js

Outra maneira de chamá-lo .env é chamá-lo dentro de um script. Isso significa que você não precisará require('dotenv').config() no início do seu send-whatsapp-message.js arquivo. Em vez disso, vá até o package.json e crie um script chamado “dev” como a seguir:

"scripts": {
"dev": "node -r dotenv/config send-whatsapp-message.js"

Se você executar o script, ainda terá suas variáveis de ambiente!

npm run dev

Gerenciar vários ambientes

Em projetos complexos, pode ser necessário utilizar diferentes .env arquivos para os ambientes de desenvolvimento, teste e produção. Ferramentas como dotenv-cli podem ajudá-lo a gerenciar vários ambientes.

Por exemplo, você pode usar diferentes .env arquivos:

  • .env.local

  • .env.production

Carregue-os com o dotenv-cli :

$ dotenv -e .env.production node send-whatsapp-message.js

Implemente com segurança

Para uma implantação segura, .env os arquivos nunca devem ser enviados para o controle de versão! Use .gitignore para excluí-los.

Para fazer isso, crie um .gitignore arquivo com o seguinte conteúdo:

.env

Agora, quando você faz um commit no Git, tudo exceto os arquivos listados será enviado para o repositório.

Conclusão

Agora que você aprendeu a usar variáveis de ambiente em JavaScript, pode parar de codificar diretamente suas informações pessoais no código e enviá-las para o ambiente de produção, onde ficariam à vista de todos! Você conhece outras práticas recomendadas para o uso de variáveis de ambiente? Se sim, compartilhe-as e me marque — adoraria saber mais sobre elas! Além disso, fique à vontade para participar da nossa comunidade no Slack e nos seguir no X, antes conhecido como Twitter. Boa programação!

Compartilhar:

https://a.storyblok.com/f/270183/384x384/b68093ec17/diana-pham.png
Diana PhamRepresentante de Desenvolvedores

Diana é defensora de desenvolvedores na Vonage. Ela gosta de comer ostras frescas.