1
00:00:03,560 --> 00:00:07,745
In questo esercizio, impareremo di più sul loopback.

2
00:00:07,745 --> 00:00:13,635
Loopback stesso ha iniziato il suo viaggio con una piccola azienda chiamata StrongLoop.

3
00:00:13,635 --> 00:00:20,775
Questa società è stata successivamente acquisita da IBM e Loopback è diventata parte

4
00:00:20,775 --> 00:00:28,725
della piattaforma IBM Bluemix, ma loopback è ancora disponibile come piattaforma open source.

5
00:00:28,725 --> 00:00:36,205
Quindi, puoi installare e utilizzare Loopback per creare il tuo backend come servizio,

6
00:00:36,205 --> 00:00:43,850
come dimostreremo in questo esercizio e nei restanti due esercizi di questa lezione.

7
00:00:43,850 --> 00:00:51,230
Come ho accennato, Loopback stesso è disponibile come modulo NPM.

8
00:00:51,230 --> 00:00:56,445
Quindi stiamo per installare prima l'interfaccia a riga di comando di Loopback.

9
00:00:56,445 --> 00:01:00,810
Quindi, per installare l'interfaccia della riga di comando di Loopback

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

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

12
00:01:13,030 --> 00:01:18,170
Ora, se lo stai facendo su un Mac o una macchina Linux,

13
00:01:18,170 --> 00:01:22,025
assicurati di usare sudo davanti ad esso e poi

14
00:01:22,025 --> 00:01:26,855
lascia che l'interfaccia a riga di comando di Loopback venga installata.

15
00:01:26,855 --> 00:01:29,024
Una volta che viene installato,

16
00:01:29,024 --> 00:01:31,195
è possibile iniziare con l'esercizio.

17
00:01:31,195 --> 00:01:32,510
Come puoi vedere, in questo momento,

18
00:01:32,510 --> 00:01:37,380
sto usando la versione 4.2.0 di Loopback CLI in questo corso.

19
00:01:37,380 --> 00:01:45,380
Ora, per impalcare un'applicazione basata su framework di loopback è molto semplice.

20
00:01:45,380 --> 00:01:47,725
Una volta installata l'interfaccia della riga di comando,

21
00:01:47,725 --> 00:01:50,690
potrebbe essere necessario riavviare il terminale affinché

22
00:01:50,690 --> 00:01:53,970
il comando sia disponibile al prompt.

23
00:01:53,970 --> 00:02:00,080
Quindi assicurati di riavviare il tuo terminale o la tua finestra di comando.

24
00:02:00,080 --> 00:02:01,810
Quindi, al prompt,

25
00:02:01,810 --> 00:02:06,560
dovresti avere questo comando chiamato lb disponibile per noi.

26
00:02:06,560 --> 00:02:08,695
LB in piedi per Loopback.

27
00:02:08,695 --> 00:02:14,560
Quindi... Per impalcare un'applicazione Loopback al prompt del terminale,

28
00:02:14,560 --> 00:02:18,850
digitare lb ConfusionServer-loopback,

29
00:02:21,490 --> 00:02:25,650
in una posizione comoda sul computer.

30
00:02:25,650 --> 00:02:27,845
Quando lo facciamo,

31
00:02:27,845 --> 00:02:34,530
la CLI di Loopback finirà per creare l'applicazione per noi,

32
00:02:34,530 --> 00:02:36,950
e per il nome dell'applicazione,

33
00:02:36,950 --> 00:02:39,585
accetterò solo lo stesso nome,

34
00:02:39,585 --> 00:02:45,389
e poi gli chiederò di creare il progetto in quella directory specifica,

35
00:02:45,389 --> 00:02:53,090
e quindi selezioneremo la versione 3.X di Loopback per noi impalcatura un'applicazione.

36
00:02:53,090 --> 00:02:55,880
Quindi, per il server API,

37
00:02:55,880 --> 00:03:02,070
selezioneremo il server API come opzione per questo.

38
00:03:02,070 --> 00:03:07,170
Quindi aspetta che Loopback impalchi la nostra applicazione.

39
00:03:12,230 --> 00:03:14,355
Una volta fatto ciò,

40
00:03:14,355 --> 00:03:16,110
il passaggio successivo è, ovviamente,

41
00:03:16,110 --> 00:03:24,605
andare alla cartella ConfusionServer-loopback.

42
00:03:24,605 --> 00:03:30,415
Quindi, inizieremo a configurare il nostro server.

43
00:03:30,415 --> 00:03:35,870
Ora, Loopback supporta i dati attraverso la modellazione dei dati.

44
00:03:35,870 --> 00:03:38,060
Quindi possiamo definire modelli di dati.

45
00:03:38,060 --> 00:03:42,030
Per fare ciò, l'interfaccia a riga di comando Loopback ci fornisce

46
00:03:42,030 --> 00:03:46,975
i vari comandi per lo sviluppo dei modelli di dati.

47
00:03:46,975 --> 00:03:50,960
Quindi, in questo caso, ho intenzione di sviluppare un esempio

48
00:03:50,960 --> 00:03:55,130
di un dato di un modello per i miei piatti qui.

49
00:03:55,130 --> 00:03:56,620
Quindi, al prompt,

50
00:03:56,620 --> 00:03:59,560
lasciami digitare il modello lb.

51
00:03:59,560 --> 00:04:01,905
Quindi, mentre passiamo attraverso i passaggi,

52
00:04:01,905 --> 00:04:04,600
ti spiegherò cosa

53
00:04:04,600 --> 00:04:12,860
l'interfaccia della riga di comando di Loopback e come crea il modello di dati per i piatti.

54
00:04:12,860 --> 00:04:14,840
Quindi, in questo caso,

55
00:04:14,840 --> 00:04:16,720
ci sarà solo digitare lb model,

56
00:04:16,720 --> 00:04:21,460
e poi ci verrà chiesto con il nome per il modello,

57
00:04:21,460 --> 00:04:24,165
e quindi digitare il nome del modello come piatti.

58
00:04:24,165 --> 00:04:28,059
Come ricorderete, abbiamo usato piatti, promozioni

59
00:04:28,059 --> 00:04:34,339
e leader come le tre principali fonti di dati per la nostra applicazione.

60
00:04:34,339 --> 00:04:39,420
Quindi, creeremo il nostro primo modello chiamato piatti, e questo modello, in

61
00:04:39,420 --> 00:04:46,580
questo momento, verrà memorizzato nel database in memoria del nostro computer per il momento.

62
00:04:46,580 --> 00:04:47,840
Nel prossimo esercizio,

63
00:04:47,840 --> 00:04:52,940
aggiungeremo in MongoDB come persistenza back-end per i nostri dati.

64
00:04:52,940 --> 00:04:58,110
Ora, questo modello di piatti sarà un modello persistente.

65
00:04:58,110 --> 00:05:03,890
Quindi, selezioneremo il modello persistente come opzione per il modello,

66
00:05:03,890 --> 00:05:09,350
quindi diremo esporre i piatti tramite un'API REST,

67
00:05:09,350 --> 00:05:13,060
e quindi, per impostazione predefinita,

68
00:05:13,060 --> 00:05:17,880
lo esporrà endpoint piatti barra e che andrà perfettamente bene per noi.

69
00:05:17,880 --> 00:05:19,680
Quindi, possiamo solo dire di si'.

70
00:05:19,680 --> 00:05:23,865
Quindi, il modello verrà creato in una cartella denominata common.

71
00:05:23,865 --> 00:05:27,950
Ora, una volta che l'applicazione Loopback è impalcato fuori,

72
00:05:27,950 --> 00:05:34,020
vedremo dove tutti questi dati sono memorizzati nella cartella stessa e nella sottocartella,

73
00:05:34,020 --> 00:05:38,295
e questo modello verrà creato nella sottocartella comune.

74
00:05:38,295 --> 00:05:40,580
Quindi, lo selezioneremo.

75
00:05:40,580 --> 00:05:42,110
Quindi, a questo punto,

76
00:05:42,110 --> 00:05:45,860
ci chiederà di selezionare tutte le proprietà che vogliamo

77
00:05:45,860 --> 00:05:50,750
specificare per il modello di piatti.

78
00:05:50,750 --> 00:05:54,710
Quindi, per questo, specificheremo

79
00:05:54,710 --> 00:06:00,880
il nome come prima proprietà e quindi specificheremo il tipo di proprietà come stringa.

80
00:06:00,880 --> 00:06:02,380
Quindi, come vedete,

81
00:06:02,380 --> 00:06:09,060
ci sta spingendo e ottenendo informazioni sulle varie parti del nostro modello,

82
00:06:09,060 --> 00:06:12,425
e poi ci aiuta a configurare il modello per noi.

83
00:06:12,425 --> 00:06:18,355
Quindi, questo è del tipo di stringa e questo è richiesto e il valore predefinito sarà vuoto.

84
00:06:18,355 --> 00:06:22,230
Quindi... Questo sarà il nome, quindi la descrizione,

85
00:06:22,370 --> 00:06:29,270
che sarà del tipo di stringa richiesto e il valore predefinito è vuoto.

86
00:06:29,270 --> 00:06:36,570
Quindi, categoria, che sarà del tipo di stringa richiesto e il valore predefinito è vuoto.

87
00:06:36,570 --> 00:06:40,930
Immagine che sarà del tipo di stringa,

88
00:06:40,930 --> 00:06:43,934
e questo è richiesto,

89
00:06:43,934 --> 00:06:47,550
e il valore predefinito sarà vuoto.

90
00:06:47,950 --> 00:06:52,885
Etichetta, che sarà anche del tipo di stringa.

91
00:06:52,885 --> 00:06:58,310
Questo è obbligatorio, ma il valore predefinito che specificheremo come una stringa vuota.

92
00:06:58,310 --> 00:07:01,360
Quindi, l'ultimo sarebbe il prezzo,

93
00:07:01,360 --> 00:07:05,870
che sarà richiesto e il valore predefinito è zero.

94
00:07:05,870 --> 00:07:10,115
Ora, capite perché ho configurato tutte queste varie proprietà.

95
00:07:10,115 --> 00:07:19,070
Tutti questi fanno parte dell'oggetto piatti che usiamo sul nostro lato server.

96
00:07:19,070 --> 00:07:22,580
Ora, una volta che hai completato l'inserimento di tutte le proprietà

97
00:07:22,580 --> 00:07:23,760
, e che abbiamo,

98
00:07:23,760 --> 00:07:25,565
allora a quel punto l'

99
00:07:25,565 --> 00:07:27,080
ultimo, ovviamente,

100
00:07:27,080 --> 00:07:31,270
è quello di aggiungere la proprietà in primo piano,

101
00:07:31,270 --> 00:07:34,265
che sarà del tipo booleano,

102
00:07:34,265 --> 00:07:36,665
e questo è richiesto,

103
00:07:36,665 --> 00:07:39,440
e il valore predefinito è falso.

104
00:07:39,440 --> 00:07:41,560
Questo è tutto. Una volta che abbiamo inserito tutte le proprietà,

105
00:07:41,560 --> 00:07:47,280
basta premere quando chiede il nome della proprietà se si digita ritorno,

106
00:07:47,280 --> 00:07:49,960
quindi il modello verrà impalcato fuori.

107
00:07:49,960 --> 00:07:55,050
Ora, allo stesso modo, creeremo i modelli per promozioni e leader.

108
00:07:55,050 --> 00:08:04,625
Quindi, per le promozioni, lasciatemi andare avanti e dire lb model e il nome del modello è promozioni.

109
00:08:04,625 --> 00:08:08,080
Il sondaggio nel DB questo è il modello persistente e lo

110
00:08:08,080 --> 00:08:12,625
esporremo dall'API e dal comune.

111
00:08:12,625 --> 00:08:23,040
Per le promozioni, le proprietà sono nome della stringa di tipo non richiedono alcun valore predefinito,

112
00:08:23,040 --> 00:08:25,949
immagine della stringa di tipo,

113
00:08:25,949 --> 00:08:29,535
non richiedono alcun valore predefinito,

114
00:08:29,535 --> 00:08:34,030
etichetta della stringa di tipo,

115
00:08:34,030 --> 00:08:39,085
richiesto il valore predefinito è vuoto.

116
00:08:39,085 --> 00:08:43,220
Prezzo, tipo di stringa, obbligatorio,

117
00:08:43,220 --> 00:08:45,170
il valore predefinito è zero,

118
00:08:45,170 --> 00:08:52,150
quindi descrizione obbligatoria e il valore predefinito è vuoto.

119
00:08:52,150 --> 00:08:54,550
Questo è tutto per le promozioni.

120
00:08:54,550 --> 00:08:57,460
Permettetemi ora di creare il modello dei leader.

121
00:08:57,460 --> 00:09:07,090
Quindi, diremo modello LB e diremo leader,

122
00:09:07,090 --> 00:09:10,750
e questo sarebbe nel database PersistedModel,

123
00:09:10,750 --> 00:09:14,290
esporre leader tramite API REST, personalizzato, comune.

124
00:09:14,290 --> 00:09:16,610
Quindi, come puoi vedere la creazione di un modello è molto,

125
00:09:16,610 --> 00:09:20,175
molto semplice usando la CLI di LoopBack,

126
00:09:20,175 --> 00:09:24,260
e per il leader le proprietà di nome,

127
00:09:24,260 --> 00:09:27,830
della stringa di tipo, obbligatorio,

128
00:09:27,830 --> 00:09:32,759
predefinito è vuoto, immagine della stringa di tipo,

129
00:09:32,759 --> 00:09:36,634
valore predefinito richiesto è vuoto,

130
00:09:36,634 --> 00:09:40,190
designazione della stringa di tipo,

131
00:09:40,190 --> 00:09:44,130
valore predefinito richiesto è vuoto,

132
00:09:44,130 --> 00:09:46,790
abbreviazione della stringa di tipo,

133
00:09:46,790 --> 00:09:54,425
richiesto un vuoto, e l'ultimo è la descrizione della stringa di tipo, richiesto un vuoto.

134
00:09:54,425 --> 00:10:00,965
Questo è tutto. Quindi, abbiamo configurato tre diversi modelli qui: promozioni

135
00:10:00,965 --> 00:10:04,280
, leader e piatti.

136
00:10:04,280 --> 00:10:09,175
Questo è tutto. Ora, il nostro server LoopBack sarebbe stato configurato.

137
00:10:09,175 --> 00:10:12,765
Diamo un'occhiata a questo nel nostro editor,

138
00:10:12,765 --> 00:10:19,715
e anche avvieremo questo server LoopBack e poi guarderemo a cosa serve per noi.

139
00:10:19,715 --> 00:10:21,940
Per avviare il server LoopBack,

140
00:10:21,940 --> 00:10:29,205
al prompt digitare NPM start o nodo space dot.

141
00:10:29,205 --> 00:10:32,280
In entrambi i casi, il server LoopBack verrà avviato

142
00:10:32,280 --> 00:10:35,620
e il server LoopBack sarà disponibile per noi.

143
00:10:35,620 --> 00:10:39,210
A questo indirizzo, è anche possibile sfogliare

144
00:10:39,210 --> 00:10:43,065
l'API REST supportata dal server LoopBack in questa parte finale.

145
00:10:43,065 --> 00:10:45,360
Quindi, lasciami copiare prima questo,

146
00:10:45,360 --> 00:10:49,670
e poi vedremo cosa serve il server LoopBack a questo punto.

147
00:10:49,670 --> 00:10:51,170
In una barra degli indirizzi del browser,

148
00:10:51,170 --> 00:10:55,325
digitarlo e quindi vedere che il nostro server LoopBack,

149
00:10:55,325 --> 00:10:56,990
se si accede,

150
00:10:56,990 --> 00:11:03,010
mostrerà quando è stato avviato l'ultimo e per quanto tempo è in esecuzione.

151
00:11:03,010 --> 00:11:11,575
Lì. Ora, andiamo a Explorer del nostro server LoopBack,

152
00:11:11,575 --> 00:11:13,500
e quindi vedrai immediatamente che

153
00:11:13,500 --> 00:11:17,785
questo LoopBack API Explorer utilizza qualcosa chiamato il

154
00:11:17,785 --> 00:11:25,185
formato IO Swagger per mostrarci tutti gli endpoint API REST.

155
00:11:25,185 --> 00:11:28,989
Quindi, qui vedete che abbiamo piatti, leader, promozioni,

156
00:11:28,989 --> 00:11:30,740
e loopBack, per impostazione predefinita,

157
00:11:30,740 --> 00:11:33,540
aggiunge un modello utente in là.

158
00:11:33,540 --> 00:11:37,860
Il modello User è il modello utente standard a scopo di autenticazione.

159
00:11:37,860 --> 00:11:41,690
Vedremo come farne uso nel prossimo esercizio.

160
00:11:41,690 --> 00:11:43,470
Ora, facciamo clic sui piatti.

161
00:11:43,470 --> 00:11:48,250
Quando si fa clic su piatti si vedrà che il server LoopBack ha configurato automaticamente

162
00:11:48,250 --> 00:11:51,160
che barra piatti endpoint e quindi espone

163
00:11:51,160 --> 00:11:55,435
automaticamente vari endpoint API REST per noi,

164
00:11:55,435 --> 00:12:01,310
e quindi le azioni corrispondenti che è possibile eseguire su ciascuno di essi.

165
00:12:01,310 --> 00:12:06,775
Non solo, con l'API di I/O Swagger,

166
00:12:06,775 --> 00:12:11,610
ottieni automaticamente anche queste informazioni documentate qui,

167
00:12:11,610 --> 00:12:16,670
che ti forniscono dettagli su come usare quell'endpoint API REST.

168
00:12:16,670 --> 00:12:19,145
Quindi, qui quando dice ottenere piatti di taglio,

169
00:12:19,145 --> 00:12:22,185
dice qual è il tipico.

170
00:12:22,185 --> 00:12:26,490
Questa è la struttura del modello utilizzata lì,

171
00:12:26,490 --> 00:12:31,910
e poi «proviamolo» e poi vedrai che

172
00:12:31,910 --> 00:12:34,440
ci restituirà con un corpo vuoto perché in

173
00:12:34,440 --> 00:12:37,930
questo momento non c'è nulla nel mio database in memoria.

174
00:12:37,930 --> 00:12:42,910
Quindi, ricorda che l'abbiamo configurato con DB in-memory, il

175
00:12:42,910 --> 00:12:43,910
che significa che questo è

176
00:12:43,910 --> 00:12:46,990
il database in memoria e in questo momento non contiene nulla.

177
00:12:46,990 --> 00:12:50,400
Ma nel prossimo esercizio vedremo come collegheremo questo al

178
00:12:50,400 --> 00:12:56,610
nostro server MongoDB ed essere in grado di recuperare tutte le informazioni dal nostro server MongoDB.

179
00:12:56,610 --> 00:13:00,180
Allo stesso modo, se vuoi pubblicare un piatto,

180
00:13:00,180 --> 00:13:04,165
tutto ciò che devi fare è usare questo endpoint 'piatti POST»,

181
00:13:04,165 --> 00:13:08,280
e ti dà anche esattamente

182
00:13:08,280 --> 00:13:12,435
la struttura dei dati che devi usare per fornire informazioni al modello.

183
00:13:12,435 --> 00:13:15,450
Quindi, puoi semplicemente copiarlo e incollarlo nei dati,

184
00:13:15,450 --> 00:13:19,120
quindi compilare ognuno di questi valori qui,

185
00:13:19,120 --> 00:13:21,760
e poi una volta che lo fai puoi semplicemente,

186
00:13:21,760 --> 00:13:26,060
ad esempio, provarlo e poi che verrà pubblicato sul server.

187
00:13:26,060 --> 00:13:28,935
Quindi, è possibile eseguire tutte le

188
00:13:28,935 --> 00:13:35,575
operazioni get, put, post ed delete direttamente utilizzando questo Explorer qui

189
00:13:35,575 --> 00:13:38,970
per interagire con gli endpoint API REST

190
00:13:38,970 --> 00:13:42,570
che vengono creati automaticamente per te da LoopBack.

191
00:13:42,570 --> 00:13:45,340
Quindi con questo, completiamo questo esercizio.

192
00:13:45,340 --> 00:13:49,805
Quindi, in questo esercizio abbiamo visto come possiamo

193
00:13:49,805 --> 00:13:55,805
configurare molto rapidamente un server API REST utilizzando il framework LoopBack.

194
00:13:55,805 --> 00:13:57,480
Nei prossimi due esercizi,

195
00:13:57,480 --> 00:14:02,030
esploreremo ulteriori dettagli sul framework LoopBack.

196
00:14:02,030 --> 00:14:06,755
Ora, questo potrebbe essere un buon momento per fare un'inizializzazione Git della

197
00:14:06,755 --> 00:14:10,230
tua cartella LoopBack e quindi fare un

198
00:14:10,230 --> 00:14:15,570
commit Git con «Getting Started» LoopBack come messaggio.