﻿1
00:00:01,140 --> 00:00:02,520
‫Instrutor: Bem-vindo de volta.

2
00:00:02,520 --> 00:00:04,540
‫Neste vídeo, você aprenderá tudo

3
00:00:04,540 --> 00:00:06,200
‫sobre variáveis de ambiente.

4
00:00:06,200 --> 00:00:10,220
‫Então, o que são, como os definimos e como os usamos.

5
00:00:10,220 --> 00:00:13,190
‫Agora, isso não é exatamente sobre o Express, ele realmente

6
00:00:13,190 --> 00:00:16,700
‫tem a ver com o desenvolvimento do nó JS em geral, mas

7
00:00:16,700 --> 00:00:18,710
‫realmente precisamos disso para seguir em frente

8
00:00:18,710 --> 00:00:21,400
‫no projeto e, portanto, este é um bom momento

9
00:00:21,400 --> 00:00:22,833
‫para falar sobre isso.

10
00:00:24,440 --> 00:00:27,170
‫Assim, o node JS, ou aplicativos Express, podem

11
00:00:27,170 --> 00:00:29,270
‫ser executados em diferentes ambientes.

12
00:00:29,270 --> 00:00:32,660
‫E os mais importantes são o ambiente de desenvolvimento e

13
00:00:32,660 --> 00:00:34,440
‫o ambiente de produção.

14
00:00:34,440 --> 00:00:37,180
‫Isso porque, dependendo do ambiente, podemos usar bancos

15
00:00:37,180 --> 00:00:39,690
‫de dados diferentes, por exemplo, ou podemos

16
00:00:39,690 --> 00:00:42,260
‫ativar ou desativar o login, ou podemos ativar

17
00:00:42,260 --> 00:00:44,730
‫ou desativar a depuração, ou realmente

18
00:00:44,730 --> 00:00:47,410
‫todos os tipos de configurações diferentes que podem

19
00:00:47,410 --> 00:00:50,450
‫mudar dependendo do desenvolvimento que nós ' está dentro

20
00:00:50,450 --> 00:00:53,360
‫Então, novamente, os mais importantes são o ambiente

21
00:00:53,360 --> 00:00:55,240
‫de desenvolvimento e produção.

22
00:00:55,240 --> 00:00:56,890
‫Mas existem outros

23
00:00:56,890 --> 00:00:58,980
‫ambientes que equipes maiores podem usar.

24
00:00:58,980 --> 00:01:01,190
‫Portanto, esse tipo de configuração

25
00:01:01,190 --> 00:01:04,570
‫que acabei de mencionar, como diferentes bancos de dados ou

26
00:01:04,570 --> 00:01:07,890
‫login ativado ou desativado, será baseado em variáveis de ambiente.

27
00:01:07,890 --> 00:01:12,020
‫Agora, por padrão, o Express define o ambiente para desenvolvimento, o que

28
00:01:12,020 --> 00:01:15,360
‫faz muito sentido porque é isso que estamos fazendo quando

29
00:01:15,360 --> 00:01:16,943
‫iniciamos um novo projeto.

30
00:01:18,110 --> 00:01:19,800
‫Então, para fins de

31
00:01:19,800 --> 00:01:21,550
‫demonstração, vamos dar uma olhada nessa

32
00:01:21,550 --> 00:01:23,700
‫variável e faremos isso aqui no servidor.

33
00:01:24,680 --> 00:01:27,350
‫Portanto, lembre-se de que tudo o que não está

34
00:01:27,350 --> 00:01:32,350
‫relacionado ao Express faremos fora do aplicativo. Arquivo JS.

35
00:01:33,260 --> 00:01:36,660
‫Portanto, só usamos este aqui para configurar nosso aplicativo.

36
00:01:36,660 --> 00:01:39,530
‫Portanto, só usamos este para configurar tudo

37
00:01:39,530 --> 00:01:42,423
‫o que tem a ver com o aplicativo Express.

38
00:01:43,370 --> 00:01:45,530
‫Mas as variáveis de ambiente estão realmente fora

39
00:01:45,530 --> 00:01:47,003
‫do escopo do Express.

40
00:01:51,467 --> 00:01:53,367
‫Então, vamos fazer um console rapidamente. faça login

41
00:01:55,225 --> 00:01:57,400
‫aqui do app. obter e,

42
00:01:57,400 --> 00:01:58,690
‫em seguida, terminar.

43
00:01:58,690 --> 00:02:02,250
‫Salve aqui e aqui embaixo você pode ver o desenvolvimento.

44
00:02:02,250 --> 00:02:05,260
‫Deixe-me limpar o console aqui, salvá-lo novamente e, portanto,

45
00:02:05,260 --> 00:02:07,700
‫aqui novamente você verá o desenvolvimento.

46
00:02:07,700 --> 00:02:10,350
‫Esse é o ambiente em que estamos atualmente.

47
00:02:10,350 --> 00:02:14,620
‫E então você vê que este app. getenv nos fornecerá

48
00:02:14,620 --> 00:02:17,100
‫a variável de ambiente env.

49
00:02:17,100 --> 00:02:21,240
‫Portanto, em resumo, as variáveis de ambiente são variáveis globais usadas para

50
00:02:21,240 --> 00:02:24,150
‫definir o ambiente no qual um aplicativo de

51
00:02:24,150 --> 00:02:25,640
‫nó está sendo executado.

52
00:02:25,640 --> 00:02:28,080
‫Portanto, este é definido pelo

53
00:02:28,080 --> 00:02:32,023
‫Express, mas o próprio nó JS define muitos ambientes.

54
00:02:33,358 --> 00:02:36,950
‫Agora, esta variável env aqui é definida pelo Express,

55
00:02:36,950 --> 00:02:40,040
‫mas o próprio nó JS também define

56
00:02:40,040 --> 00:02:42,170
‫muitas variáveis de ambiente.

57
00:02:42,170 --> 00:02:45,510
‫E então vamos dar uma olhada nisso também.

58
00:02:45,510 --> 00:02:48,410
‫Então, esses estão localizados no processo. env.

59
00:02:52,035 --> 00:02:53,270
‫Salve e aqui

60
00:02:53,270 --> 00:02:56,450
‫temos um monte de variáveis diferentes, ok e não

61
00:02:56,450 --> 00:03:01,170
‫vou passar por todas elas, mas vamos ver que elas realmente são um

62
00:03:01,170 --> 00:03:04,330
‫monte delas, e o node usa a maioria

63
00:03:04,330 --> 00:03:05,450
‫delas internamente.

64
00:03:05,450 --> 00:03:08,180
‫Por exemplo, uma tarefa para o diretório

65
00:03:08,180 --> 00:03:11,060
‫de trabalho atual aqui nesta variável de ambiente

66
00:03:11,060 --> 00:03:14,630
‫e realmente um monte de outras coisas como você pode ver.

67
00:03:14,630 --> 00:03:16,483
‫Por exemplo, minha pasta

68
00:03:17,580 --> 00:03:22,580
‫pessoal ou meu nome de login, você vê o script que usamos para iniciar esse

69
00:03:23,030 --> 00:03:26,740
‫processo, então, na verdade, um monte de coisas que, por algum

70
00:03:28,024 --> 00:03:30,210
‫motivo, o nó JS precisa internamente.

71
00:03:30,210 --> 00:03:32,640
‫Agora, essas variáveis vêm do módulo central

72
00:03:32,640 --> 00:03:36,590
‫do processo e são definidas no momento em que o processo é iniciado.

73
00:03:36,590 --> 00:03:39,960
‫E, como você pode ver, não precisamos exigir o módulo de

74
00:03:39,960 --> 00:03:40,970
‫processo certo.

75
00:03:40,970 --> 00:03:44,490
‫Ele está simplesmente disponível em todos os lugares automaticamente.

76
00:03:44,490 --> 00:03:47,480
‫Agora no Express, muitos pacotes

77
00:03:47,480 --> 00:03:51,420
‫dependem de uma variável especial chamada nó N.

78
00:03:51,420 --> 00:03:53,120
‫Portanto, é uma variável

79
00:03:53,120 --> 00:03:55,930
‫que é uma espécie de convenção que deve definir

80
00:03:55,930 --> 00:03:58,920
‫se estamos em desenvolvimento ou em modo de produção.

81
00:03:58,920 --> 00:04:00,963
‫No entanto, o Express não define

82
00:04:01,995 --> 00:04:04,680
‫realmente essa variável e, portanto, temos que fazer isso manualmente.

83
00:04:04,680 --> 00:04:07,160
‫E existem várias maneiras de fazer isso,

84
00:04:07,160 --> 00:04:09,540
‫mas vamos começar com a mais fácil

85
00:04:09,540 --> 00:04:11,770
‫que é usar o terminal.

86
00:04:11,770 --> 00:04:12,980
‫Vou terminar esse

87
00:04:12,980 --> 00:04:16,570
‫processo aqui, limpá-lo e, assim, quando iniciamos esse processo pela

88
00:04:16,570 --> 00:04:19,270
‫última vez, o fizemos usando npm start.

89
00:04:19,270 --> 00:04:21,340
‫E npm start, por sua vez, significa onde está?

90
00:04:21,340 --> 00:04:26,320
‫Portanto, significa servidor nodemon.

91
00:04:26,320 --> 00:04:28,563
‫E então vamos copiar isso aqui.

92
00:04:29,500 --> 00:04:31,993
‫Portanto, usamos o servidor nodemon. js para iniciar o processo.

93
00:04:34,090 --> 00:04:38,100
‫Mas se você quiser

94
00:04:38,100 --> 00:04:41,010
‫definir uma variável de ambiente para este

95
00:04:41,010 --> 00:04:44,010
‫processo, precisamos pré-planejar essa variável para este comando.

96
00:04:44,010 --> 00:04:44,843
‫Portanto, dizemos

97
00:04:48,171 --> 00:04:50,296
‫nodeenv, que é aquela variável especial

98
00:04:50,296 --> 00:04:52,990
‫de que acabei de falar que é igual

99
00:04:52,990 --> 00:04:53,823
‫a desenvolvimento.

100
00:04:55,590 --> 00:04:56,460
‫E se eu começar esse processo agora, vamos dar uma olhada.

101
00:04:56,460 --> 00:05:00,640
‫E agora temos aqui o nó N definido para desenvolvimento.

102
00:05:00,640 --> 00:05:09,400
‫E então este é o resultado de fazer este console. processo de logoff.

103
00:05:09,400 --> 00:05:09,400
‫env.

104
00:05:09,400 --> 00:05:10,503
‫E

105
00:05:11,770 --> 00:05:14,500
‫então essa variável que temos aqui realmente vem desse comando.

106
00:05:14,500 --> 00:05:15,573
‫E podemos definir ainda mais, se quisermos.

107
00:05:16,770 --> 00:05:20,070
‫Então, vamos apenas dizer que X tem 23 apenas

108
00:05:20,070 --> 00:05:24,350
‫para fins de teste, inicie o processo e agora você verá que

109
00:05:24,350 --> 00:05:28,680
‫a variável de ambiente X está anexada a essa string 23, certo.

110
00:05:28,680 --> 00:05:31,723
‫Então, novamente, muitos pacotes no npm que

111
00:05:33,098 --> 00:05:35,940
‫usamos para o desenvolvimento do

112
00:05:35,940 --> 00:05:39,290
‫Express, na verdade, dependem dessa variável de ambiente.

113
00:05:39,290 --> 00:05:40,560
‫E quando nosso projeto estiver

114
00:05:40,560 --> 00:05:43,920
‫pronto e vamos implantá-lo, devemos mudar o nó N e a variável para produção.

115
00:05:43,920 --> 00:05:47,440
‫E faremos isso, é claro, assim que implantarmos

116
00:05:47,440 --> 00:05:50,440
‫o projeto no final do curso.

117
00:05:50,440 --> 00:05:51,853
‫Portanto, definimos os nós

118
00:05:53,043 --> 00:05:56,350
‫N e X como variáveis de ambiente, mas podemos fazer muito mais.

119
00:05:56,350 --> 00:05:58,290
‫E isso porque geralmente usamos

120
00:05:58,290 --> 00:06:01,660
‫variáveis de ambiente, como definições de configuração para nossos aplicativos.

121
00:06:01,660 --> 00:06:04,950
‫Portanto, sempre que nosso aplicativo precisa de alguma configuração para coisas

122
00:06:04,950 --> 00:06:08,640
‫que podem mudar com base no ambiente em que o aplicativo está

123
00:06:08,640 --> 00:06:10,860
‫sendo executado, usamos variáveis de ambiente.

124
00:06:10,860 --> 00:06:14,330
‫Por exemplo, podemos usar diferentes bancos de dados para desenvolvimento

125
00:06:14,330 --> 00:06:17,550
‫e teste até que possamos definir uma variável para

126
00:06:17,550 --> 00:06:20,470
‫cada um e, em seguida, ativar o

127
00:06:20,470 --> 00:06:23,640
‫banco de dados certo de acordo com o ambiente.

128
00:06:23,640 --> 00:06:25,410
‫Além disso, podemos definir dados

129
00:06:25,410 --> 00:06:28,590
‫confidenciais como senhas e nome de usuário usando variáveis de ambiente.

130
00:06:28,590 --> 00:06:31,493
‫Agora, não é realmente prático definir

131
00:06:32,570 --> 00:06:35,670
‫sempre todas essas variáveis no comando

132
00:06:35,670 --> 00:06:38,550
‫em que iniciamos o aplicativo.

133
00:06:38,550 --> 00:06:39,610
‫Então imagine

134
00:06:39,610 --> 00:06:43,000
‫que temos 10 variáveis ambientais e não seria muito prático

135
00:06:43,000 --> 00:06:46,000
‫ter que escrever todas elas aqui dentro deste comando.

136
00:06:46,000 --> 00:06:49,750
‫E então o que fazemos é criar um arquivo de configuração.

137
00:06:49,750 --> 00:06:53,563
‫Então, deixe-me ir em frente e

138
00:06:55,408 --> 00:06:57,810
‫criar a configuração. env.

139
00:07:01,426 --> 00:07:04,200
‫E então env é

140
00:07:04,200 --> 00:07:08,000
‫realmente a convenção para definir um arquivo que é essas variáveis de ambiente.

141
00:07:08,000 --> 00:07:10,220
‫E o código VS realmente

142
00:07:10,220 --> 00:07:14,060
‫reconhece isso e coloca este ícone de configuração diretamente no arquivo.

143
00:07:14,060 --> 00:07:16,793
‫Portanto, vamos agora definir essa variável

144
00:07:18,311 --> 00:07:20,430
‫aqui e colá-la aqui.

145
00:07:23,023 --> 00:07:24,050
‫E também

146
00:07:24,050 --> 00:07:28,060
‫podemos usar alguns desses dados confidenciais que acabei de mencionar.

147
00:07:28,060 --> 00:07:29,260
‫Digamos que o

148
00:07:29,260 --> 00:07:34,110
‫usuário seja Jonas em letras minúsculas e a senha seja um, dois, três, quatro, cinco, seis.

149
00:07:35,400 --> 00:07:39,523
‫Agora, como você pode ver, esses nomes de variáveis

150
00:07:41,403 --> 00:07:44,070
‫geralmente estão sempre em maiúsculas.

151
00:07:44,070 --> 00:07:44,993
‫Então é uma espécie de convenção que usamos.

152
00:07:45,862 --> 00:07:48,223
‫Agora, em seu código VS provavelmente

153
00:07:49,320 --> 00:07:53,990
‫todo o texto é apenas branco, então você não tem realce de sintaxe.

154
00:07:53,990 --> 00:07:56,020
‫E eu tenho isso porque eles usam isso. extensão env aqui.

155
00:07:56,020 --> 00:08:00,810
‫Então, se você quiser. arquivos env para ficarem bonitos como este,

156
00:08:00,810 --> 00:08:04,800
‫vá em frente e instale-os.

157
00:08:04,800 --> 00:08:07,233
‫Portanto, temos a senha do usuário,

158
00:08:08,784 --> 00:08:12,959
‫vamos definir também a porta na qual nosso aplicativo deve estar rodando.

159
00:08:12,959 --> 00:08:14,190
‫Essa também é

160
00:08:14,190 --> 00:08:16,810
‫uma variável padrão que geralmente está em a. env arquivo como este.

161
00:08:16,810 --> 00:08:19,523
‫E vamos definir este como 8.000.

162
00:08:20,520 --> 00:08:23,410
‫Agora, como realmente conectamos isso. arquivo env com nosso aplicativo

163
00:08:23,410 --> 00:08:27,332
‫de nó?

164
00:08:27,332 --> 00:08:28,550
‫Portanto, precisamos de

165
00:08:28,550 --> 00:08:31,240
‫alguma forma de ler essas variáveis deste arquivo

166
00:08:31,240 --> 00:08:33,300
‫e salvá-las como variáveis de ambiente.

167
00:08:33,300 --> 00:08:35,003
‫Porque agora este é apenas um

168
00:08:35,870 --> 00:08:39,590
‫arquivo de texto e o nó JS não tem como saber que essas variáveis estão aqui.

169
00:08:39,590 --> 00:08:44,403
‫E então para isso o padrão é usar

170
00:08:45,450 --> 00:08:48,490
‫um pacote npm chamado. env.

171
00:08:49,870 --> 00:08:51,683
‫Então npm install. env, tudo

172
00:08:54,156 --> 00:08:55,663
‫bem,

173
00:08:57,850 --> 00:08:58,823
‫então vamos

174
00:09:00,688 --> 00:09:03,980
‫ao nosso servidor e realmente requerer esse módulo.

175
00:09:03,980 --> 00:09:04,853
‫Então const. env é igual a

176
00:09:07,978 --> 00:09:08,978
‫require. env, tão simples.

177
00:09:11,907 --> 00:09:12,857
‫E aqui nós

178
00:09:15,739 --> 00:09:17,270
‫podemos simplesmente usar esta variável dotenv

179
00:09:17,270 --> 00:09:20,660
‫chamada config nela e aí nós só temos que passar um objeto para

180
00:09:22,313 --> 00:09:24,810
‫especificar o caminho onde nosso arquivo de configuração está localizado.

181
00:09:24,810 --> 00:09:28,300
‫Portanto, caminho, config

182
00:09:28,300 --> 00:09:30,083
‫dotenv.

183
00:09:31,333 --> 00:09:32,166
‫E então o que

184
00:09:37,011 --> 00:09:37,844
‫este comando fará agora

185
00:09:37,844 --> 00:09:40,880
‫é ler nossas variáveis do arquivo e salvá-las nas variáveis de ambiente JS do nó.

186
00:09:40,880 --> 00:09:43,540
‫Então, vamos agora executar npm start e

187
00:09:43,540 --> 00:09:45,823
‫isso deve bloquear todas as nossas

188
00:09:46,900 --> 00:09:50,850
‫variáveis de ambiente para o console por causa desta linha de código.

189
00:09:50,850 --> 00:09:53,600
‫E então vamos esperar por isso, e de

190
00:09:53,600 --> 00:09:55,373
‫fato aqui temos nodeenv, temos

191
00:09:57,340 --> 00:10:01,680
‫a porta, as senhas e, claro, o resto dos dados devem estar em

192
00:10:01,680 --> 00:10:04,120
‫algum lugar aqui dentro desta lista gigantesca.

193
00:10:04,120 --> 00:10:07,730
‫Realmente não importa onde está aqui.

194
00:10:07,730 --> 00:10:09,883
‫Então, o usuário era na verdade Jonas. io já e então devemos

195
00:10:11,860 --> 00:10:14,193
‫chamá-lo aqui de nome de usuário.

196
00:10:15,090 --> 00:10:18,100
‫Em seguida, salve

197
00:10:18,100 --> 00:10:21,843
‫novamente aqui para executar o servidor novamente, e agora temos um

198
00:10:28,524 --> 00:10:32,100
‫nome de usuário aqui e essas são as quatro variáveis

199
00:10:36,200 --> 00:10:38,330
‫de ambiente definidas em nosso arquivo.

200
00:10:38,330 --> 00:10:41,060
‫Ótimo, e só para terminar, vamos agora realmente usar esta

201
00:10:41,060 --> 00:10:43,100
‫variável nodeenv e também a variável port.

202
00:10:43,100 --> 00:10:46,170
‫E para fazer isso, vamos ao aplicativo. js e em algum lugar aqui a porta

203
00:10:46,170 --> 00:10:51,170
‫deve ser definida e em algum lugar aqui temos o middleware oral logger

204
00:10:51,590 --> 00:10:55,930
‫e o que eu quero

205
00:10:55,930 --> 00:10:59,210
‫fazer agora é apenas executar esse middleware para

206
00:10:59,210 --> 00:11:01,920
‫defini-lo apenas quando estivermos realmente em

207
00:11:02,762 --> 00:11:06,090
‫desenvolvimento, para que o login não aconteça quando o

208
00:11:06,090 --> 00:11:08,140
‫aplicativo está em produção.

209
00:11:08,140 --> 00:11:10,670
‫Então, temos isso aqui, e vamos

210
00:11:10,670 --> 00:11:12,080
‫prosseguir e

211
00:11:12,080 --> 00:11:13,773
‫dizer se o processo. env. nodeenv é igual a

212
00:11:16,029 --> 00:11:18,080
‫development well, só então use Morgan.

213
00:11:21,355 --> 00:11:22,272
‫Agora você

214
00:11:24,616 --> 00:11:26,840
‫deve estar se perguntando por que realmente temos acesso a

215
00:11:30,413 --> 00:11:33,893
‫essa variável de ambiente aqui, quando na verdade não as definimos neste arquivo, mas no servidor. js.

216
00:11:36,014 --> 00:11:38,690
‫E a resposta para isso é que a leitura

217
00:11:38,690 --> 00:11:41,910
‫das variáveis do arquivo que acontece aqui para o processo do

218
00:11:41,910 --> 00:11:45,960
‫nó só precisa acontecer uma vez.

219
00:11:45,960 --> 00:11:49,450
‫Está então no processo e o processo é,

220
00:11:49,450 --> 00:11:53,050
‫obviamente, o mesmo, não importa em qual arquivo estejamos.

221
00:11:53,050 --> 00:11:54,610
‫Portanto, estamos sempre no

222
00:11:54,610 --> 00:11:57,630
‫mesmo processo e as variáveis de ambiente estão no processo.

223
00:11:57,630 --> 00:12:00,193
‫E assim o processo que está rodando, onde

224
00:12:01,740 --> 00:12:03,690
‫nosso aplicativo está rodando é sempre

225
00:12:03,690 --> 00:12:06,610
‫o mesmo e isso está disponível para nós em

226
00:12:06,610 --> 00:12:08,290
‫cada arquivo do projeto.

227
00:12:08,290 --> 00:12:11,350
‫Então é assim que usamos essa variável, agora vamos voltar

228
00:12:11,350 --> 00:12:14,180
‫ao servidor e vamos dizer que a porta deve

229
00:12:14,180 --> 00:12:15,550
‫ser aquela que

230
00:12:15,550 --> 00:12:17,960
‫vem das variáveis de ambiente ou esta 3.000.

231
00:12:17,960 --> 00:12:22,800
‫Então processe. env. porta ou 3.000.

232
00:12:22,800 --> 00:12:25,300
‫Agora, algo está errado aqui, vamos dar uma olhada e, oh, vejo

233
00:12:25,300 --> 00:12:27,333
‫que já estou usando 8.000 em alguns outros aplicativos que

234
00:12:30,889 --> 00:12:33,340
‫estão sendo executados em algum lugar

235
00:12:35,270 --> 00:12:36,163
‫do meu computador.

236
00:12:37,350 --> 00:12:40,970
‫E então deixe-me ir em frente e mudar

237
00:12:40,970 --> 00:12:43,920
‫isso aqui para 3.000 também.

238
00:12:43,920 --> 00:12:46,520
‫Mas isso realmente não importa, você pode deixar o seu em

239
00:12:46,520 --> 00:12:47,860
‫8.000 se funcionar para você.

240
00:12:47,860 --> 00:12:50,460
‫Limpe aqui, salve novamente e agora funciona.

241
00:12:51,386 --> 00:12:53,720
‫Você também pode se livrar deste console. logar aqui porque não

242
00:12:53,720 --> 00:12:56,750
‫precisamos ver essas variáveis o tempo todo.

243
00:12:56,750 --> 00:12:58,740
‫E agora vamos rapidamente fazer uma solicitação

244
00:12:58,740 --> 00:13:02,200
‫de http para ver se nosso logger ainda funciona e vou fazer

245
00:13:02,200 --> 00:13:05,420
‫isso aqui carteiro de

246
00:13:05,420 --> 00:13:08,333
‫novo, então este, voltando, e agora nosso login se foi.

247
00:13:09,310 --> 00:13:14,310
‫Bem, vamos ver por quê.

248
00:13:14,395 --> 00:13:17,970
‫Portanto, temos aqui em desenvolvimento o que é correto.

249
00:13:17,970 --> 00:13:20,853
‫E isso deve realmente funcionar, então

250
00:13:23,832 --> 00:13:26,403
‫também está correto aqui, desenvolvimento.

251
00:13:28,027 --> 00:13:28,977
‫Bem, vamos fazer um console. logar

252
00:13:29,834 --> 00:13:32,883
‫e dar uma olhada em um

253
00:13:34,640 --> 00:13:37,040
‫nível, mas ficamos indefinidos aqui.

254
00:13:37,040 --> 00:13:39,613
‫Então, vamos verificar o que está acontecendo aqui, e sim, eu vejo

255
00:13:41,370 --> 00:13:43,220
‫o problema que realmente

256
00:13:43,220 --> 00:13:44,083
‫precisamos do arquivo

257
00:13:48,740 --> 00:13:51,633
‫do aplicativo antes de nossas variáveis de ambiente serem lidas do arquivo de configuração.

258
00:13:54,589 --> 00:13:56,389
‫E então precisa ser o contrário.

259
00:13:58,068 --> 00:14:01,380
‫Deixe-me mover isso para cima aqui

260
00:14:01,380 --> 00:14:05,240
‫e só depois queremos executar o código que

261
00:14:05,240 --> 00:14:07,953
‫está no arquivo up.

262
00:14:07,953 --> 00:14:10,110
‫E só depois disso queremos executar o

263
00:14:10,110 --> 00:14:12,070
‫código que está no arquivo up.

264
00:14:12,070 --> 00:14:14,940
‫Então, novamente, não pudemos ler a variável de

265
00:14:14,940 --> 00:14:16,550
‫processo dentro do app. js porque ainda não foi configurado.

266
00:14:16,550 --> 00:14:18,970
‫Portanto, se salvarmos agora, você verá

267
00:14:18,970 --> 00:14:20,503
‫o desenvolvimento aqui.

268
00:14:21,700 --> 00:14:24,480
‫E se fizermos nosso pedido agora, vamos enviá-lo, então é claro

269
00:14:24,480 --> 00:14:28,153
‫que receberemos nosso logger de volta.

270
00:14:29,020 --> 00:14:30,530
‫Então está funcionando agora.

271
00:14:30,530 --> 00:14:32,640
‫E agora, finalmente, como último

272
00:14:32,640 --> 00:14:36,640
‫teste, vamos adicionar um novo script de início ao nosso pacote. json.

273
00:14:36,640 --> 00:14:39,143
‫Portanto, agora temos de iniciar o servidor nodemon, mas também

274
00:14:41,264 --> 00:14:43,100
‫quero adicionar outro para produção apenas

275
00:14:43,100 --> 00:14:45,370
‫para que possamos testar o que acontece nessa situação.

276
00:14:45,370 --> 00:14:49,000
‫Portanto, inicie o prod, e

277
00:14:50,050 --> 00:14:53,050
‫deixe-me chamar o outro de dev, portanto, na produção,

278
00:14:53,050 --> 00:14:55,870
‫queremos simplesmente definir a variável nodeenv para produção.

279
00:14:55,870 --> 00:14:59,013
‫Portanto, nodenv é igual à

280
00:15:02,869 --> 00:15:06,693
‫produção e o resto é o mesmo.

281
00:15:10,331 --> 00:15:12,410
‫Então

282
00:15:12,410 --> 00:15:14,693
‫nodenv, servidor. js.

283
00:15:18,617 --> 00:15:19,550
‫Então vamos

284
00:15:21,904 --> 00:15:24,236
‫terminar este aqui npm run start

285
00:15:24,236 --> 00:15:25,069
‫production.

286
00:15:27,288 --> 00:15:28,121
‫E agora

287
00:15:29,685 --> 00:15:31,135
‫você vê que nossa variável nodeenv está realmente configurada para produção.

288
00:15:34,713 --> 00:15:35,600
‫Então, isso está vindo deste console. faça login aqui.

289
00:15:37,300 --> 00:15:38,303
‫E se agora

290
00:15:39,330 --> 00:15:42,030
‫fizermos este pedido, não iremos obter o nosso logger.

291
00:15:42,030 --> 00:15:44,340
‫Portanto, não está aqui como antes.

292
00:15:44,340 --> 00:15:47,670
‫E é basicamente assim que executamos

293
00:15:47,670 --> 00:15:49,900
‫códigos diferentes, dependendo se estamos em desenvolvimento ou em produção.

294
00:15:49,900 --> 00:15:52,323
‫Então, vamos nos livrar deste aqui,

295
00:15:53,505 --> 00:15:55,283
‫podemos fechar este

296
00:15:56,580 --> 00:15:59,550
‫também, e então vamos voltar ao nosso

297
00:15:59,550 --> 00:16:02,653
‫script de desenvolvimento, é claro, então npm execute

298
00:16:03,530 --> 00:16:06,193
‫start dev e tudo bem aqui estamos.

299
00:16:07,650 --> 00:16:09,150
‫Apenas um teste final

300
00:16:11,398 --> 00:16:14,120
‫e, de fato, aqui está o resultado do nosso login.

301
00:16:14,120 --> 00:16:16,420
‫Então é isso para as variáveis de ambiente, vamos passar

302
00:16:19,598 --> 00:16:21,113
‫para a aula final nesta seção.

