1
00:00:03,560 --> 00:00:07,745
Neste exercício, aprenderemos mais sobre loopback.

2
00:00:07,745 --> 00:00:13,635
Loopback começou sua jornada com uma pequena empresa chamada StrongLoop.

3
00:00:13,635 --> 00:00:20,775
Esta empresa foi posteriormente adquirida pela IBM e Loopback tornou-se parte

4
00:00:20,775 --> 00:00:28,725
da plataforma IBM Bluemix, mas o loopback ainda está disponível como uma plataforma de código aberto.

5
00:00:28,725 --> 00:00:36,205
Assim, você pode instalar e fazer uso do Loopback para construir seu backend como um serviço,

6
00:00:36,205 --> 00:00:43,850
como demonstraremos neste exercício e nos dois exercícios restantes desta lição.

7
00:00:43,850 --> 00:00:51,230
Como eu mencionei, Loopback em si está disponível como um módulo NPM.

8
00:00:51,230 --> 00:00:56,445
Então vamos instalar a interface de linha de comando Loopback primeiro.

9
00:00:56,445 --> 00:01:00,810
Portanto, para instalar a interface de linha de comando Loopback

10
00:01:00,810 --> 00:01:02,875
, CLI, no prompt,

11
00:01:02,875 --> 00:01:13,030
digite npminstall loopback CLI menos save.

12
00:01:13,030 --> 00:01:18,170
Agora, se você estiver fazendo isso em um Mac ou uma máquina Linux,

13
00:01:18,170 --> 00:01:22,025
certifique-se de usar sudo na frente dele e então

14
00:01:22,025 --> 00:01:26,855
deixe a interface de linha de comando Loopback ser instalada.

15
00:01:26,855 --> 00:01:29,024
Uma vez instalado,

16
00:01:29,024 --> 00:01:31,195
você pode começar com o exercício.

17
00:01:31,195 --> 00:01:32,510
Como você pode ver, neste momento,

18
00:01:32,510 --> 00:01:37,380
estou usando a CLI de Loopback versão 4.2.0 neste curso.

19
00:01:37,380 --> 00:01:45,380
Agora, para andaimes um aplicativo baseado em arcabouço de loopback é muito simples.

20
00:01:45,380 --> 00:01:47,725
Depois de instalar a interface de linha de comando,

21
00:01:47,725 --> 00:01:50,690
talvez seja necessário reiniciar o terminal para

22
00:01:50,690 --> 00:01:53,970
que o comando esteja disponível no prompt.

23
00:01:53,970 --> 00:02:00,080
Portanto, certifique-se de reiniciar o terminal ou a janela de comando.

24
00:02:00,080 --> 00:02:01,810
Em seguida, no prompt,

25
00:02:01,810 --> 00:02:06,560
você deve ter este comando chamado lb disponível para nós.

26
00:02:06,560 --> 00:02:08,695
LB em pé para Loopback.

27
00:02:08,695 --> 00:02:14,560
Então. Para andaime um aplicativo Loopback no prompt do terminal,

28
00:02:14,560 --> 00:02:18,850
digite lb ConfusionServer-Loopback,

29
00:02:21,490 --> 00:02:25,650
em um local conveniente no computador.

30
00:02:25,650 --> 00:02:27,845
Quando fazemos isso,

31
00:02:27,845 --> 00:02:34,530
a CLI de Loopback acabará criando o aplicativo para nós,

32
00:02:34,530 --> 00:02:36,950
e para o nome do aplicativo,

33
00:02:36,950 --> 00:02:39,585
eu vou aceitar o mesmo nome,

34
00:02:39,585 --> 00:02:45,389
e então eu vou pedir-lhe para criar o projeto nesse diretório específico,

35
00:02:45,389 --> 00:02:53,090
e então vamos selecionar a versão 3.X do Loopback para nós andaime um aplicativo.

36
00:02:53,090 --> 00:02:55,880
Em seguida, para o servidor de API,

37
00:02:55,880 --> 00:03:02,070
selecionaremos o servidor de API como a opção para isso.

38
00:03:02,070 --> 00:03:07,170
Em seguida, aguarde que o Loopback andaime nossa aplicação.

39
00:03:12,230 --> 00:03:14,355
Uma vez feito isso,

40
00:03:14,355 --> 00:03:16,110
o próximo passo é, é claro,

41
00:03:16,110 --> 00:03:24,605
ir para a pasta ConfusionServer-Loopback.

42
00:03:24,605 --> 00:03:30,415
Em seguida, vamos começar a configurar o nosso servidor.

43
00:03:30,415 --> 00:03:35,870
Agora, Loopback suporta dados através de modelagem de dados.

44
00:03:35,870 --> 00:03:38,060
Assim, podemos definir modelos de dados.

45
00:03:38,060 --> 00:03:42,030
Para fazer isso, a interface de linha de comando Loopback nos fornece

46
00:03:42,030 --> 00:03:46,975
os vários comandos para desenvolver os modelos de dados.

47
00:03:46,975 --> 00:03:50,960
Então, neste caso, vou desenvolver um exemplo

48
00:03:50,960 --> 00:03:55,130
de dados de um modelo para meus pratos aqui.

49
00:03:55,130 --> 00:03:56,620
Então, no prompt,

50
00:03:56,620 --> 00:03:59,560
deixe-me digitar lb model.

51
00:03:59,560 --> 00:04:01,905
Então, à medida que passamos pelas etapas,

52
00:04:01,905 --> 00:04:04,600
vou explicar a você o que

53
00:04:04,600 --> 00:04:12,860
a interface de linha de comando Loopback e como ela cria o modelo de dados para os pratos.

54
00:04:12,860 --> 00:04:14,840
Então, neste caso,

55
00:04:14,840 --> 00:04:16,720
vamos apenas digitar lb model,

56
00:04:16,720 --> 00:04:21,460
e então nós será solicitado com o nome para o modelo,

57
00:04:21,460 --> 00:04:24,165
e então eu vou digitar o nome do modelo como pratos.

58
00:04:24,165 --> 00:04:28,059
Como você se lembra, temos usado pratos, promoções

59
00:04:28,059 --> 00:04:34,339
e líderes como as três principais fontes de dados para nossa aplicação.

60
00:04:34,339 --> 00:04:39,420
Então, vamos criar nosso primeiro modelo chamado pratos, e este modelo,

61
00:04:39,420 --> 00:04:46,580
neste momento, será armazenado no banco de dados in-memory do nosso computador para o momento.

62
00:04:46,580 --> 00:04:47,840
No próximo exercício,

63
00:04:47,840 --> 00:04:52,940
vamos adicionar no MongoDB como a persistência de backend para nossos dados.

64
00:04:52,940 --> 00:04:58,110
Agora, este modelo de pratos será um modelo persistente.

65
00:04:58,110 --> 00:05:03,890
Então, vamos selecionar o modelo persistente como a opção para o modelo,

66
00:05:03,890 --> 00:05:09,350
e então vamos dizer expor os pratos através de uma API REST,

67
00:05:09,350 --> 00:05:13,060
e então, por padrão,

68
00:05:13,060 --> 00:05:17,880
ele vai expô-lo barra prato endpoint e isso vai ser perfeitamente bom para nós.

69
00:05:17,880 --> 00:05:19,680
Então, podemos apenas dizer que sim.

70
00:05:19,680 --> 00:05:23,865
Em seguida, o modelo será criado em uma pasta chamada common.

71
00:05:23,865 --> 00:05:27,950
Agora, uma vez que o aplicativo Loopback é andaime para fora,

72
00:05:27,950 --> 00:05:34,020
vamos ver onde todos esses dados são armazenados na própria pasta e na subpasta,

73
00:05:34,020 --> 00:05:38,295
e este modelo será criado na sub-pasta comum.

74
00:05:38,295 --> 00:05:40,580
Então, vamos selecionar isso.

75
00:05:40,580 --> 00:05:42,110
Então, neste ponto,

76
00:05:42,110 --> 00:05:45,860
ele nos solicitará a selecionar todas as propriedades que queremos

77
00:05:45,860 --> 00:05:50,750
especificar para o modelo de pratos.

78
00:05:50,750 --> 00:05:54,710
Então, para isso, vamos especificar

79
00:05:54,710 --> 00:06:00,880
o nome como a primeira propriedade e, em seguida, vamos especificar o tipo de propriedade como string.

80
00:06:00,880 --> 00:06:02,380
Então, como você vê,

81
00:06:02,380 --> 00:06:09,060
ele está nos solicitando e obtendo informações sobre as várias partes do nosso modelo,

82
00:06:09,060 --> 00:06:12,425
e então nos ajuda a configurar o modelo para nós.

83
00:06:12,425 --> 00:06:18,355
Então, este é do tipo de string e isso é necessário e o valor padrão será vazio.

84
00:06:18,355 --> 00:06:22,230
Então. Isso será o nome, depois a descrição,

85
00:06:22,370 --> 00:06:29,270
que será do tipo de string necessário e o valor padrão está vazio.

86
00:06:29,270 --> 00:06:36,570
Em seguida, categoria, que será do tipo de string obrigatório e o valor padrão é vazio.

87
00:06:36,570 --> 00:06:40,930
Imagem que será do tipo string,

88
00:06:40,930 --> 00:06:43,934
e isso é necessário,

89
00:06:43,934 --> 00:06:47,550
e o valor padrão será vazio.

90
00:06:47,950 --> 00:06:52,885
Rótulo, que também será do tipo string.

91
00:06:52,885 --> 00:06:58,310
Isso é necessário, mas o valor padrão que vamos especificar como uma string vazia.

92
00:06:58,310 --> 00:07:01,360
Então, o último seria o preço,

93
00:07:01,360 --> 00:07:05,870
que será necessário e o valor padrão é zero.

94
00:07:05,870 --> 00:07:10,115
Agora, você vê por que eu configurei todas essas várias propriedades.

95
00:07:10,115 --> 00:07:19,070
Todos estes são parte do objeto pratos que usamos no lado do nosso servidor.

96
00:07:19,070 --> 00:07:22,580
Agora, uma vez que você tenha concluído inserir todas as propriedades,

97
00:07:22,580 --> 00:07:23,760
e que nós temos,

98
00:07:23,760 --> 00:07:25,565
então, nesse ponto, o

99
00:07:25,565 --> 00:07:27,080
último,

100
00:07:27,080 --> 00:07:31,270
é claro, é adicionar a propriedade featured,

101
00:07:31,270 --> 00:07:34,265
que será do tipo booleano,

102
00:07:34,265 --> 00:07:36,665
e isso é necessário,

103
00:07:36,665 --> 00:07:39,440
e o valor padrão é false.

104
00:07:39,440 --> 00:07:41,560
É isso. Uma vez que tenhamos inserido todas as propriedades,

105
00:07:41,560 --> 00:07:47,280
você basta clicar quando ele pede o nome da propriedade se você digitar return,

106
00:07:47,280 --> 00:07:49,960
em seguida, o modelo será andaime para fora.

107
00:07:49,960 --> 00:07:55,050
Agora, da mesma forma, vamos criar os modelos para promoções e líderes.

108
00:07:55,050 --> 00:08:04,625
Então, para promoções, deixe-me ir em frente e dizer modelo lb eo nome do modelo é promoções.

109
00:08:04,625 --> 00:08:08,080
A pesquisa no banco de dados este é o modelo persister e vamos

110
00:08:08,080 --> 00:08:12,625
expor isso pela API, e o comum.

111
00:08:12,625 --> 00:08:23,040
Para as promoções, as propriedades são o nome da cadeia de caracteres de tipo não requerem nenhum valor padrão,

112
00:08:23,040 --> 00:08:25,949
imagem da cadeia de caracteres de tipo,

113
00:08:25,949 --> 00:08:29,535
exigem nenhum valor padrão,

114
00:08:29,535 --> 00:08:34,030
rótulo da cadeia de caracteres de tipo,

115
00:08:34,030 --> 00:08:39,085
obrigatório o valor padrão está vazio.

116
00:08:39,085 --> 00:08:43,220
Preço, tipo de string, obrigatório,

117
00:08:43,220 --> 00:08:45,170
o valor padrão é zero

118
00:08:45,170 --> 00:08:52,150
e, em seguida, descrição necessária e o valor padrão está vazio.

119
00:08:52,150 --> 00:08:54,550
Isso é tudo para promoções.

120
00:08:54,550 --> 00:08:57,460
Permitam-me agora criar o modelo de líderes.

121
00:08:57,460 --> 00:09:07,090
Então, vamos dizer modelo LB e vamos dizer líderes,

122
00:09:07,090 --> 00:09:10,750
e isso seria no banco de dados PersistedModel,

123
00:09:10,750 --> 00:09:14,290
Expor líderes via REST API, personalizado, comum.

124
00:09:14,290 --> 00:09:16,610
Então, como você pode ver criar um modelo é muito,

125
00:09:16,610 --> 00:09:20,175
muito simples usando o LoopBack CLI,

126
00:09:20,175 --> 00:09:24,260
e para o líder as propriedades de nome,

127
00:09:24,260 --> 00:09:27,830
da string de tipo, obrigatório,

128
00:09:27,830 --> 00:09:32,759
padrão é vazio, imagem da string de tipo,

129
00:09:32,759 --> 00:09:36,634
valor padrão obrigatório é vazio,

130
00:09:36,634 --> 00:09:40,190
designação da string de tipo,

131
00:09:40,190 --> 00:09:44,130
necessário valor padrão é vazio,

132
00:09:44,130 --> 00:09:46,790
abreviação da string de tipo,

133
00:09:46,790 --> 00:09:54,425
exigiu um vazio, e o último é a descrição da string de tipo, exigia um vazio.

134
00:09:54,425 --> 00:10:00,965
É isso. Então, configuramos três modelos diferentes aqui: promoções

135
00:10:00,965 --> 00:10:04,280
, líderes e pratos.

136
00:10:04,280 --> 00:10:09,175
É isso. Agora, nosso servidor LoopBack teria sido configurado.

137
00:10:09,175 --> 00:10:12,765
Vamos dar uma olhada nisso em nosso editor,

138
00:10:12,765 --> 00:10:19,715
e também vamos iniciar esse servidor LoopBack e, em seguida, olhar para o que ele serve para nós.

139
00:10:19,715 --> 00:10:21,940
Para iniciar o servidor LoopBack,

140
00:10:21,940 --> 00:10:29,205
no prompt digite Iniciar NPM ou ponto de espaço do nó.

141
00:10:29,205 --> 00:10:32,280
Em ambos os casos, o servidor LoopBack será iniciado

142
00:10:32,280 --> 00:10:35,620
e o servidor LoopBack estará disponível para nós.

143
00:10:35,620 --> 00:10:39,210
Neste endereço, você também pode navegar

144
00:10:39,210 --> 00:10:43,065
pela API REST que é suportada pelo servidor LoopBack nesta parte final.

145
00:10:43,065 --> 00:10:45,360
Então, deixe-me copiar isso primeiro,

146
00:10:45,360 --> 00:10:49,670
e então vamos ver o que o servidor LoopBack serve até agora.

147
00:10:49,670 --> 00:10:51,170
Em uma barra de endereço do navegador,

148
00:10:51,170 --> 00:10:55,325
vamos digitar isso e, em seguida, ver que nosso servidor LoopBack,

149
00:10:55,325 --> 00:10:56,990
se você acessá-lo,

150
00:10:56,990 --> 00:11:03,010
mostrará quando ele foi iniciado pela última vez e por quanto tempo ele está sendo executado.

151
00:11:03,010 --> 00:11:11,575
Ali. Agora, vamos para o Explorer do nosso servidor LoopBack,

152
00:11:11,575 --> 00:11:13,500
e então você verá imediatamente que

153
00:11:13,500 --> 00:11:17,785
este LoopBack API Explorer usa algo chamado o

154
00:11:17,785 --> 00:11:25,185
formato Swagger IO para nos mostrar todos os pontos finais da API REST.

155
00:11:25,185 --> 00:11:28,989
Então, aqui você vê que temos pratos, líderes, promoções

156
00:11:28,989 --> 00:11:30,740
e LoopBack, por padrão,

157
00:11:30,740 --> 00:11:33,540
adiciona um modelo de usuário lá.

158
00:11:33,540 --> 00:11:37,860
O modelo de usuário é o modelo de usuário padrão para fins de autenticação.

159
00:11:37,860 --> 00:11:41,690
Veremos como fazer uso disso no próximo exercício.

160
00:11:41,690 --> 00:11:43,470
Agora, vamos clicar em pratos.

161
00:11:43,470 --> 00:11:48,250
Quando você clica em pratos você verá que o servidor LoopBack configurou automaticamente

162
00:11:48,250 --> 00:11:51,160
esse ponto de extremidade pratos e, em seguida, expõe

163
00:11:51,160 --> 00:11:55,435
vários pontos de extremidade REST API automaticamente para nós,

164
00:11:55,435 --> 00:12:01,310
e, em seguida, as ações correspondentes que você pode executar em cada um deles.

165
00:12:01,310 --> 00:12:06,775
Não só isso, com a API do Swagger IO,

166
00:12:06,775 --> 00:12:11,610
você também obtém automaticamente essas informações documentadas aqui,

167
00:12:11,610 --> 00:12:16,670
o que fornece detalhes sobre como usar esse endpoint da API REST.

168
00:12:16,670 --> 00:12:19,145
Então, aqui quando diz obter pratos de barra,

169
00:12:19,145 --> 00:12:22,185
ele diz o que é o típico.

170
00:12:22,185 --> 00:12:26,490
Esta é a estrutura modelo usada lá,

171
00:12:26,490 --> 00:12:31,910
e então “vamos tentar isso” e então você verá que ele

172
00:12:31,910 --> 00:12:34,440
nos devolverá com um corpo vazio porque

173
00:12:34,440 --> 00:12:37,930
neste momento não há nada no meu banco de dados in-memory.

174
00:12:37,930 --> 00:12:42,910
Então, lembre-se que nós configuramos isso com DB in-memory, o

175
00:12:42,910 --> 00:12:43,910
que significa que este é

176
00:12:43,910 --> 00:12:46,990
o banco de dados in-memory e agora ele não contém nada.

177
00:12:46,990 --> 00:12:50,400
Mas no próximo exercício vamos ver como vamos conectar isso ao

178
00:12:50,400 --> 00:12:56,610
nosso servidor MongoDB e ser capaz de recuperar todas as informações do nosso servidor MongoDB.

179
00:12:56,610 --> 00:13:00,180
Da mesma forma, se você quiser postar um prato,

180
00:13:00,180 --> 00:13:04,165
então tudo o que você precisa fazer é usar este endpoint 'pratos POST ',

181
00:13:04,165 --> 00:13:08,280
e também lhe dá exatamente

182
00:13:08,280 --> 00:13:12,435
a estrutura dos dados que você precisa usar para fornecer informações ao modelo.

183
00:13:12,435 --> 00:13:15,450
Então, você pode simplesmente copiar isso e, em seguida, colá-lo nos dados,

184
00:13:15,450 --> 00:13:19,120
e, em seguida, preencher cada um desses valores aqui,

185
00:13:19,120 --> 00:13:21,760
e então, uma vez que você fizer isso, você pode simplesmente, digamos,

186
00:13:21,760 --> 00:13:26,060
experimentá-lo e, em seguida, isso será postado no servidor.

187
00:13:26,060 --> 00:13:28,935
Assim, você pode executar todas as

188
00:13:28,935 --> 00:13:35,575
operações get, put, post e delete diretamente usando este Explorer aqui

189
00:13:35,575 --> 00:13:38,970
para interagir com seus endpoints API REST

190
00:13:38,970 --> 00:13:42,570
que é construído automaticamente para você pelo LoopBack.

191
00:13:42,570 --> 00:13:45,340
Então, com isso, completamos este exercício.

192
00:13:45,340 --> 00:13:49,805
Então, neste exercício, vimos como podemos

193
00:13:49,805 --> 00:13:55,805
configurar rapidamente um servidor de API REST usando o framework LoopBack.

194
00:13:55,805 --> 00:13:57,480
Nos próximos exercícios,

195
00:13:57,480 --> 00:14:02,030
exploraremos mais detalhes sobre o framework LoopBack.

196
00:14:02,030 --> 00:14:06,755
Agora, este pode ser um bom momento para você fazer uma inicialização Git de

197
00:14:06,755 --> 00:14:10,230
sua pasta LoopBack e, em seguida, fazer um

198
00:14:10,230 --> 00:14:15,570
commit Git com 'Getting Started' LoopBack como a mensagem.