---
id: 587d7fb1367417b2b2512bf2
title: Use the .env File
localeTitle: Use o arquivo .env
challengeType: 2
---
## Description
O arquivo .env
é um arquivo oculto usado para transmitir variáveis de ambiente ao seu aplicativo. Este arquivo é secreto, ninguém além de você pode acessá-lo e pode ser usado para armazenar dados que você deseja manter privados ou ocultos. Por exemplo, você pode armazenar chaves de API de serviços externos ou do URI do seu banco de dados. Você também pode usá-lo para armazenar opções de configuração. Ao definir opções de configuração, você pode alterar o comportamento do seu aplicativo, sem a necessidade de reescrever algum código.
As variáveis de ambiente podem ser acessadas no aplicativo como process.env.VAR_NAME
. O objeto process.env
é um objeto Node global e as variáveis são passadas como strings. Por convenção, os nomes das variáveis são todos em maiúsculas, com palavras separadas por um sublinhado. O .env
é um arquivo de shell, portanto, você não precisa .env
nomes ou valores entre aspas. Também é importante observar que não pode haver espaço ao redor do sinal de igual quando você está atribuindo valores às suas variáveis, por exemplo, VAR_NAME=value
. Normalmente, você irá colocar cada definição de variável em uma linha separada.
Vamos adicionar uma variável de ambiente como uma opção de configuração. Armazene a variável MESSAGE_STYLE=uppercase
no arquivo .env
. Em seguida, informe ao manipulador de rota GET /json
que você criou no último desafio para transformar a mensagem do objeto de resposta em maiúsculas, se process.env.MESSAGE_STYLE
for igual a uppercase
. O objeto de resposta deve se tornar {"message": "HELLO JSON"}
.
## Instructions
## Tests
```yml
tests:
- text: A resposta do nó de extremidade /json
deve mudar de acordo com a variável de ambiente MESSAGE_STYLE
testString: 'getUserInput => $.get(getUserInput(''url'') + ''/_api/use-env-vars'').then(data => { assert.isTrue(data.passed, ''The response of "/json" does not change according to MESSAGE_STYLE''); }, xhr => { throw new Error(xhr.responseText); })'
```
## Challenge Seed
## Solution
```js
// solution required
```