﻿1
00:00:01,300 --> 00:00:02,640
‫Docente: Quindi hai

2
00:00:02,640 --> 00:00:05,930
‫già imparato a creare nuovi documenti nel database.

3
00:00:05,930 --> 00:00:07,610
‫Ma in questa lezione ti

4
00:00:07,610 --> 00:00:10,940
‫mostrerò un modo più semplice e persino migliore per farlo,

5
00:00:10,940 --> 00:00:13,933
‫mentre implementiamo il nostro gestore di tour di creazione.

6
00:00:15,620 --> 00:00:17,620
‫Quindi a questo punto la

7
00:00:17,620 --> 00:00:19,690
‫nostra API praticamente non fa più nulla.

8
00:00:19,690 --> 00:00:21,140
‫Non funziona più

9
00:00:21,140 --> 00:00:23,850
‫perché in pratica abbiamo eliminato tutte le

10
00:00:23,850 --> 00:00:25,760
‫funzionalità che avevamo nell'ultimo video.

11
00:00:25,760 --> 00:00:28,740
‫E lo abbiamo fatto, in modo che

12
00:00:28,740 --> 00:00:32,230
‫nelle prossime due lezioni possiamo ricostruirlo usando un vero database.

13
00:00:32,230 --> 00:00:36,810
‫Ok, quindi in pratica finalmente costruiamo la nostra vera API.

14
00:00:36,810 --> 00:00:38,500
‫E inizieremo implementando la

15
00:00:38,500 --> 00:00:39,957
‫funzione createTour.

16
00:00:39,957 --> 00:00:42,260
‫Ma ricorda solo la funzione handler

17
00:00:42,260 --> 00:00:45,300
‫che viene chiamata non appena c'è una richiesta di

18
00:00:45,300 --> 00:00:47,420
‫posta al percorso del tour.

19
00:00:47,420 --> 00:00:50,460
‫Quindi questo è quello che abbiamo qui in tourRoutes.

20
00:00:51,300 --> 00:00:53,320
‫Quindi mettiamolo qui.

21
00:00:53,320 --> 00:00:56,930
‫Quindi quello che ho appena detto è questo.

22
00:00:56,930 --> 00:00:59,940
‫Quindi abbiamo questo checkBody qui.

23
00:00:59,940 --> 00:01:01,450
‫Che in realtà è

24
00:01:01,450 --> 00:01:03,663
‫qualcosa che saremo anche in grado di eliminare.

25
00:01:04,920 --> 00:01:06,313
‫Allora dov'è, in realtà?

26
00:01:07,583 --> 00:01:09,120
‫checkBody va bene,

27
00:01:09,120 --> 00:01:12,750
‫quindi questa è un'altra di queste funzioni di cui non

28
00:01:12,750 --> 00:01:14,290
‫abbiamo davvero più bisogno.

29
00:01:14,290 --> 00:01:17,180
‫Perché questo era fondamentalmente per convalidare il corpo.

30
00:01:17,180 --> 00:01:22,060
‫Quindi, per vedere se conteneva il nome o la proprietà del prezzo.

31
00:01:22,060 --> 00:01:22,900
‫Destra?

32
00:01:22,900 --> 00:01:24,690
‫Ma ora se ne

33
00:01:24,690 --> 00:01:26,650
‫occuperà la nostra modella mangusta.

34
00:01:26,650 --> 00:01:28,830
‫E così di nuovo, questo

35
00:01:28,830 --> 00:01:31,900
‫qui è stato carino per mostrarci effettivamente come funziona

36
00:01:31,900 --> 00:01:34,143
‫il middleware, ma ora possiamo liberarcene.

37
00:01:35,490 --> 00:01:39,410
‫Ok, quindi lo eliminerò anche da qui.

38
00:01:39,410 --> 00:01:40,393
‫Dagli un nuovo salvataggio.

39
00:01:41,474 --> 00:01:43,400
‫Ed ora è tornato a funzionare.

40
00:01:43,400 --> 00:01:45,660
‫Comunque la funzione che stiamo

41
00:01:45,660 --> 00:01:48,000
‫creando ora è questa funzione createTour.

42
00:01:48,000 --> 00:01:50,050
‫Dove solo un dato verrà

43
00:01:50,050 --> 00:01:54,690
‫chiamato non appena qualcuno raggiunge il percorso del tour con una richiesta di posta.

44
00:01:54,690 --> 00:01:57,030
‫Ok, quindi solo per ricapitolare perché

45
00:01:57,030 --> 00:01:59,150
‫so che può essere un

46
00:01:59,150 --> 00:02:02,190
‫po' confuso con questi diversi file e diverse

47
00:02:02,190 --> 00:02:03,980
‫cartelle e diverse funzioni.

48
00:02:03,980 --> 00:02:05,430
‫Ma è anche molto

49
00:02:05,430 --> 00:02:07,610
‫importante iniziare a organizzare il nostro

50
00:02:07,610 --> 00:02:08,860
‫codice fin dall'inizio.

51
00:02:09,940 --> 00:02:10,900
‫Bene?

52
00:02:10,900 --> 00:02:14,710
‫Comunque, siamo qui nella funzione createTour.

53
00:02:14,710 --> 00:02:17,200
‫E quindi ora creiamo effettivamente un nuovo tour.

54
00:02:17,200 --> 00:02:19,270
‫E lo faremo in base ai

55
00:02:19,270 --> 00:02:21,290
‫dati che arrivano dal corpo.

56
00:02:21,290 --> 00:02:22,640
‫Ricordati che?

57
00:02:22,640 --> 00:02:24,980
‫Ora ricorda come creavamo documenti un paio

58
00:02:24,980 --> 00:02:26,363
‫di lezioni fa.

59
00:02:27,470 --> 00:02:29,253
‫Quindi abbiamo fatto così.

60
00:02:30,690 --> 00:02:32,487
‫Ad esempio, diciamo newTour quindi

61
00:02:33,327 --> 00:02:35,077
‫uguale a newTour

62
00:02:37,910 --> 00:02:40,014
‫e quindi i dati lì dentro.

63
00:02:40,014 --> 00:02:44,181
‫Quindi abbiamo fatto così e poi questo è un nuovo tour.

64
00:02:46,087 --> 00:02:48,504
‫E poi digitiamo newTour. salva e

65
00:02:50,290 --> 00:02:51,920
‫funziona abbastanza bene.

66
00:02:51,920 --> 00:02:54,780
‫Ma possiamo farlo in un modo ancora più semplice.

67
00:02:54,780 --> 00:02:58,010
‫Quindi, invece di fare questo, possiamo

68
00:03:02,220 --> 00:03:05,690
‫fare Tour. creare e quindi incollare i dati lì.

69
00:03:05,690 --> 00:03:08,070
‫Va bene e farà la stessa identica cosa.

70
00:03:08,070 --> 00:03:10,900
‫La differenza principale è che in questa

71
00:03:10,900 --> 00:03:14,170
‫versione qui chiamiamo sostanzialmente il metodo direttamente sul tour

72
00:03:14,170 --> 00:03:17,330
‫mentre in questa prima versione abbiamo chiamato il

73
00:03:17,330 --> 00:03:18,970
‫metodo sul nuovo documento.

74
00:03:18,970 --> 00:03:21,560
‫Ok, quindi è completamente diverso.

75
00:03:21,560 --> 00:03:23,940
‫Quindi di nuovo abbiamo avuto il tour che abbiamo

76
00:03:23,940 --> 00:03:24,920
‫creato dal modello.

77
00:03:24,920 --> 00:03:27,920
‫E poi in quel tour abbiamo usato il metodo di salvataggio.

78
00:03:27,920 --> 00:03:30,720
‫Perché il documento ha accesso a questo metodo

79
00:03:30,720 --> 00:03:33,030
‫e anche a molti altri metodi.

80
00:03:33,030 --> 00:03:35,040
‫Ma qui nella seconda

81
00:03:35,040 --> 00:03:39,373
‫situazione chiamiamo questo metodo di creazione proprio sul modello stesso, ok?

82
00:03:40,560 --> 00:03:45,463
‫Ora ricorda come questo metodo di salvataggio ha restituito una promessa.

83
00:03:46,480 --> 00:03:49,670
‫E quindi anche questo creare qui restituisce una promessa.

84
00:03:49,670 --> 00:03:52,630
‫E quindi per accedere al documento file così

85
00:03:52,630 --> 00:03:54,690
‫come è stato creato

86
00:03:54,690 --> 00:03:58,880
‫nel database, avremmo quindi usato . allora va bene?

87
00:03:58,880 --> 00:04:01,810
‫Ma invece di usare promesse come questa,

88
00:04:01,810 --> 00:04:03,920
‫inizierò a usare async wait.

89
00:04:03,920 --> 00:04:04,860
‫Bene.

90
00:04:04,860 --> 00:04:07,960
‫Quindi questa funzione qui dovrebbe essere una funzione asincrona.

91
00:04:07,960 --> 00:04:09,900
‫Quindi tutto ciò che

92
00:04:09,900 --> 00:04:12,250
‫dobbiamo fare è scrivere asincrono proprio qui.

93
00:04:12,250 --> 00:04:15,760
‫Quindi abbiamo asincrono e quindi ora possiamo aspettare il risultato di

94
00:04:15,760 --> 00:04:16,903
‫questa promessa qui.

95
00:04:18,255 --> 00:04:21,010
‫Quindi spero che tu abbia familiarità con questo.

96
00:04:21,010 --> 00:04:23,030
‫E in realtà ho una sezione

97
00:04:23,030 --> 00:04:25,890
‫in questo corso che tratta esattamente questo genere di cose.

98
00:04:25,890 --> 00:04:27,490
‫Quindi, se non hai

99
00:04:27,490 --> 00:04:30,920
‫guardato quella sezione ma non hai ancora familiarità al 100% con

100
00:04:30,920 --> 00:04:33,280
‫async wait, vai avanti e guarda quella sezione

101
00:04:33,280 --> 00:04:36,040
‫in modo da capire davvero cosa sta succedendo qui.

102
00:04:36,040 --> 00:04:39,270
‫Ok, quindi invece di usare questo, qui userò async

103
00:04:39,270 --> 00:04:40,960
‫wait e quindi salverò il

104
00:04:40,960 --> 00:04:43,790
‫valore del risultato di questa promessa nella

105
00:04:43,790 --> 00:04:45,413
‫nuova variabile tour.

106
00:04:49,220 --> 00:04:52,020
‫Ok, ora l'ultimo pezzo del puzzle qui

107
00:04:52,020 --> 00:04:56,410
‫è ovviamente quello di passare alcuni dati reali in questo metodo di creazione.

108
00:04:56,410 --> 00:04:58,410
‫E quindi, invece di

109
00:04:58,410 --> 00:05:01,310
‫questo oggetto vuoto, passeremo il corpo della

110
00:05:01,310 --> 00:05:05,020
‫richiesta, quindi req. body e quindi questi sono

111
00:05:05,020 --> 00:05:08,010
‫i dati forniti con la richiesta di post, giusto?

112
00:05:08,010 --> 00:05:09,290
‫Ora solo un'altra

113
00:05:09,290 --> 00:05:12,600
‫volta, solo per assicurarti che tutto ti sia chiaro.

114
00:05:12,600 --> 00:05:15,920
‫Ok, quindi possiamo usare direttamente il modello del tour e chiamare

115
00:05:15,920 --> 00:05:18,340
‫il metodo di creazione su di esso.

116
00:05:18,340 --> 00:05:20,630
‫Quindi in quella funzione passiamo i

117
00:05:20,630 --> 00:05:23,600
‫dati che vogliamo memorizzare nel database come un nuovo tour.

118
00:05:23,600 --> 00:05:26,810
‫E quei dati provengono dal corpo della posta, giusto?

119
00:05:26,810 --> 00:05:30,730
‫E quindi è memorizzato all'interno del corpo del punto della richiesta.

120
00:05:30,730 --> 00:05:32,460
‫Quindi questa variabile qui.

121
00:05:32,460 --> 00:05:35,503
‫Ora questo metodo qui restituirà quindi una promessa.

122
00:05:36,473 --> 00:05:38,850
‫E aspettiamo quella promessa usando

123
00:05:38,850 --> 00:05:42,000
‫async wait e poi memorizziamo quel risultato nella

124
00:05:42,000 --> 00:05:44,050
‫variabile newTour che sarà

125
00:05:44,050 --> 00:05:48,083
‫il documento appena creato già con l'ID e tutto, ok?

126
00:05:49,700 --> 00:05:51,130
‫Quindi terrò questo

127
00:05:51,130 --> 00:05:53,160
‫codice qui solo come riferimento.

128
00:05:53,160 --> 00:05:57,210
‫E per ora riportiamo qui questo dato.

129
00:05:57,210 --> 00:05:58,363
‫Pezzo di codice in realtà.

130
00:05:59,250 --> 00:06:00,720
‫Dagli un salvataggio.

131
00:06:00,720 --> 00:06:03,950
‫E ora otteniamo questo errore di lint ES.

132
00:06:03,950 --> 00:06:05,360
‫Quindi diamo un'occhiata a

133
00:06:05,360 --> 00:06:07,300
‫quello appena messo il mouse qui.

134
00:06:07,300 --> 00:06:10,500
‫E ci dice che le funzioni asincrone non sono supportate fino

135
00:06:10,500 --> 00:06:13,230
‫a questo nodo 7. 6 e quindi questo errore

136
00:06:13,230 --> 00:06:16,140
‫di lint ES proviene da quel plug-in del nodo che

137
00:06:16,140 --> 00:06:17,320
‫abbiamo effettivamente installato.

138
00:06:17,320 --> 00:06:18,450
‫Quindi puoi vederlo qui.

139
00:06:18,450 --> 00:06:21,410
‫Bene, quindi quello che faremo per risolvere questo problema è

140
00:06:21,410 --> 00:06:23,920
‫semplicemente andare al pacchetto. json e qui

141
00:06:23,920 --> 00:06:25,600
‫trovi la versione del nodo

142
00:06:25,600 --> 00:06:27,180
‫che stiamo effettivamente utilizzando.

143
00:06:27,180 --> 00:06:28,383
‫Quindi è molto semplice.

144
00:06:30,880 --> 00:06:33,790
‫Abbiamo solo bisogno di specificare la proprietà dei

145
00:06:33,790 --> 00:06:36,673
‫motori qui nel nostro documento json.

146
00:06:39,070 --> 00:06:43,830
‫E imposta il nodo su maggiore o

147
00:06:44,850 --> 00:06:47,230
‫uguale a 10.

148
00:06:47,230 --> 00:06:48,850
‫Ok, e questo perché in

149
00:06:48,850 --> 00:06:51,053
‫questo corso usiamo almeno il nodo dieci.

150
00:06:52,636 --> 00:06:56,490
‫Quindi 7. 6 sarebbe sufficiente per far scomparire quell'errore

151
00:06:56,490 --> 00:06:58,610
‫ma ovviamente specifichiamo la versione reale che

152
00:06:58,610 --> 00:06:59,890
‫stiamo effettivamente utilizzando.

153
00:06:59,890 --> 00:07:01,690
‫Quindi diamo a questo un salvataggio.

154
00:07:01,690 --> 00:07:03,010
‫Chiudilo.

155
00:07:03,010 --> 00:07:06,500
‫E così ora il nostro errore qui è effettivamente sparito.

156
00:07:06,500 --> 00:07:09,560
‫Ora solo un altro passaggio prima di poterlo effettivamente

157
00:07:09,560 --> 00:07:11,330
‫provare nella nostra app Postman.

158
00:07:11,330 --> 00:07:14,210
‫Ed è che in realtà abbiamo bisogno di gestire gli errori.

159
00:07:14,210 --> 00:07:17,860
‫Ok, quindi tieni presente che con async

160
00:07:17,860 --> 00:07:22,650
‫wait dobbiamo testare gli errori usando la sintassi try catch.

161
00:07:22,650 --> 00:07:26,003
‫Quindi scriviamo un blocco try.

162
00:07:27,160 --> 00:07:28,760
‫Quindi avvolgi tutto il nostro codice lì dentro.

163
00:07:32,065 --> 00:07:33,615
‫E poi finalmente un blocco di cattura.

164
00:07:34,920 --> 00:07:39,190
‫Che come già sappiamo ha accesso all'oggetto errore.

165
00:07:39,190 --> 00:07:41,410
‫E ora cosa mettiamo effettivamente qui?

166
00:07:41,410 --> 00:07:42,940
‫Bene, dobbiamo pensare

167
00:07:42,940 --> 00:07:45,410
‫a quando esattamente può verificarsi un errore.

168
00:07:45,410 --> 00:07:47,790
‫Quindi ricorda come due lezioni fa

169
00:07:47,790 --> 00:07:50,410
‫quando stavamo creando i nostri primi documenti.

170
00:07:50,410 --> 00:07:51,820
‫Abbiamo ricevuto un

171
00:07:51,820 --> 00:07:53,870
‫errore quando abbiamo provato a creare

172
00:07:53,870 --> 00:07:56,600
‫un documento senza uno dei campi richiesti, giusto?

173
00:07:56,600 --> 00:07:58,700
‫E quindi quello era un errore di convalida.

174
00:07:58,700 --> 00:08:02,370
‫Ed è uno degli errori che verrebbero catturati qui.

175
00:08:02,370 --> 00:08:05,290
‫Va bene perché se provassimo a creare un

176
00:08:05,290 --> 00:08:07,640
‫documento diciamo senza uno dei campi

177
00:08:07,640 --> 00:08:09,900
‫obbligatori allora questa promessa

178
00:08:09,900 --> 00:08:12,430
‫che viene creata qui verrebbe respinta, ok?

179
00:08:12,430 --> 00:08:15,000
‫E quindi se abbiamo una promessa

180
00:08:15,000 --> 00:08:17,740
‫rifiutata qui, allora entrerà nel blocco catch.

181
00:08:17,740 --> 00:08:20,870
‫E quindi, fondamentalmente in questo blocco catch qui

182
00:08:20,870 --> 00:08:23,050
‫vogliamo inviare una risposta

183
00:08:23,050 --> 00:08:25,580
‫dicendo che c'è stato un errore.

184
00:08:25,580 --> 00:08:30,580
‫Va bene così res. stato di nuovo qui e

185
00:08:30,670 --> 00:08:33,483
‫400 che sta per cattiva richiesta. json e ora qualcosa di molto simile

186
00:08:35,967 --> 00:08:36,980
‫a questo,

187
00:08:37,950 --> 00:08:40,290
‫ma il suo stato è fail

188
00:08:40,290 --> 00:08:43,310
‫e quindi invece dei dati qui inviamo un

189
00:08:44,270 --> 00:08:48,050
‫messaggio e per ora consente di impostare il messaggio sull'errore.

190
00:08:48,970 --> 00:08:51,520
‫Bene.

191
00:08:52,560 --> 00:08:53,393
‫E

192
00:08:54,800 --> 00:08:59,260
‫ora torniamo finalmente alla nostra applicazione Postman e proviamoci.

193
00:08:59,260 --> 00:09:01,643
‫Ok, quindi crea questo e ora

194
00:09:01,643 --> 00:09:03,990
‫creiamo un nuovo tour.

195
00:09:03,990 --> 00:09:06,170
‫Quindi in questo momento qui

196
00:09:06,170 --> 00:09:07,790
‫abbiamo la

197
00:09:07,790 --> 00:09:11,370
‫difficoltà e il prezzo della durata del nome e

198
00:09:11,370 --> 00:09:13,860
‫quindi aggiungiamo anche la valutazione e

199
00:09:15,400 --> 00:09:18,040
‫che deve essere tra virgolette 4. 7.

200
00:09:21,050 --> 00:09:21,883
‫Va bene, e ora arriva il momento.

201
00:09:22,900 --> 00:09:25,570
‫Invia e infatti ci siamo.

202
00:09:25,570 --> 00:09:29,330
‫Quindi questo è il tour che

203
00:09:29,330 --> 00:09:32,170
‫abbiamo appena creato.

204
00:09:32,170 --> 00:09:33,430
‫Abbiamo la nostra valutazione.

205
00:09:33,430 --> 00:09:34,520
‫Abbiamo il nostro nome e abbiamo il nostro prezzo.

206
00:09:34,520 --> 00:09:36,950
‫E, naturalmente, l'ID creato automaticamente.

207
00:09:36,950 --> 00:09:39,780
‫Ora potresti notare che non abbiamo alcuna difficoltà

208
00:09:39,780 --> 00:09:40,890
‫e nessun prezzo.

209
00:09:40,890 --> 00:09:44,360
‫Ebbene, perché pensi che sia così?

210
00:09:44,360 --> 00:09:46,870
‫Bene, questo perché questi due campi in realtà

211
00:09:46,870 --> 00:09:48,920
‫non sono nel nostro schema

212
00:09:48,920 --> 00:09:51,030
‫e quindi non vengono inseriti nel database.

213
00:09:51,030 --> 00:09:54,240
‫Quindi tutto il resto che non è nel

214
00:09:54,240 --> 00:09:56,730
‫nostro schema viene semplicemente ignorato.

215
00:09:56,730 --> 00:09:57,840
‫Quindi questo è il potere del nostro schema, ok?

216
00:09:57,840 --> 00:10:01,800
‫Ottimo, ora proviamo a inviarlo di nuovo e

217
00:10:01,800 --> 00:10:05,210
‫quindi dovrebbe darci un errore, giusto?

218
00:10:05,210 --> 00:10:08,113
‫E infatti ci siamo.

219
00:10:08,950 --> 00:10:10,650
‫Abbiamo la nostra 400 cattiva richiesta.

220
00:10:10,650 --> 00:10:13,340
‫E abbiamo questo messaggio che è l'errore

221
00:10:13,340 --> 00:10:15,200
‫completo che abbiamo ricevuto.

222
00:10:15,200 --> 00:10:17,810
‫E così qui vediamo che il messaggio di errore è una chiave duplicata.

223
00:10:17,810 --> 00:10:21,330
‫E questo perché abbiamo già il Test Tour 2.

224
00:10:21,330 --> 00:10:24,510
‫E quindi non poteva crearne un altro.

225
00:10:24,510 --> 00:10:26,563
‫Quindi creiamone un altro qui come Jonas Tour.

226
00:10:29,330 --> 00:10:33,960
‫Non ha molta importanza, ok?

227
00:10:33,960 --> 00:10:35,933
‫Voglio solo crearlo, prima

228
00:10:36,850 --> 00:10:39,083
‫senza niente di tutto questo solo

229
00:10:39,940 --> 00:10:42,490
‫per vedere se otteniamo un altro errore.

230
00:10:42,490 --> 00:10:45,030
‫E infatti otteniamo alcuni più errori qui.

231
00:10:45,030 --> 00:10:48,070
‫Questa volta dicendo che la convalida del tour

232
00:10:48,070 --> 00:10:50,300
‫è fallita perché un tour deve

233
00:10:50,300 --> 00:10:51,870
‫avere un prezzo.

234
00:10:51,870 --> 00:10:54,053
‫Ok, quindi vedi che in questo momento

235
00:10:54,980 --> 00:10:57,170
‫abbiamo questo tipo di strana struttura di errore qui.

236
00:10:57,170 --> 00:11:00,090
‫Quindi Mongo DB restituisce questo enorme oggetto di errore completo.

237
00:11:00,090 --> 00:11:04,650
‫E più tardi ce ne occuperemo davvero.

238
00:11:04,650 --> 00:11:07,100
‫Quindi avremo un'intera sezione sulla sola gestione degli errori.

239
00:11:07,100 --> 00:11:10,720
‫E per allora creeremo alcuni errori più significativi.

240
00:11:10,720 --> 00:11:14,420
‫Ok, per ora sostituiamo questo oggetto di

241
00:11:14,420 --> 00:11:18,080
‫errore con una stringa normale qui.

242
00:11:18,080 --> 00:11:20,490
‫Quindi diciamo dati non validi inviati.

243
00:11:20,490 --> 00:11:25,440
‫Ok, quindi non fare qualcosa del genere in una vera applicazione di

244
00:11:25,440 --> 00:11:27,950
‫produzione, ma di nuovo avremo una

245
00:11:27,950 --> 00:11:30,350
‫vera gestione degli errori un

246
00:11:30,350 --> 00:11:32,930
‫po' più tardi che se ne occuperà.

247
00:11:32,930 --> 00:11:35,430
‫Ok, quindi mostro errori significativi al cliente.

248
00:11:35,430 --> 00:11:39,360
‫Quindi torniamo qui e

249
00:11:39,360 --> 00:11:40,750
‫rimandiamolo.

250
00:11:41,610 --> 00:11:43,040
‫E così ora otteniamo questa stringa normale qui.

251
00:11:43,040 --> 00:11:45,950
‫Quindi creiamo il prezzo qui.

252
00:11:45,950 --> 00:11:50,510
‫Impostiamolo a 567 e poi

253
00:11:50,510 --> 00:11:53,520
‫lo inviamo.

254
00:11:54,490 --> 00:11:55,700
‫E così ora vedrai che la nostra

255
00:11:55,700 --> 00:11:56,860
‫valutazione predefinita qui funziona ancora.

256
00:11:56,860 --> 00:11:59,813
‫Cerchiamo ora di capire tutto questo anche in bussola.

257
00:12:01,800 --> 00:12:05,810
‫E infatti otteniamo i nostri quattro tour nel database.

258
00:12:05,810 --> 00:12:09,860
‫Quindi tutti questi strani test che abbiamo fatto

259
00:12:09,860 --> 00:12:12,210
‫fino a questo punto.

260
00:12:12,210 --> 00:12:14,960
‫Quindi andiamo avanti ed eliminiamo questi ultimi due.

261
00:12:14,960 --> 00:12:19,140
‫Era davvero solo per testare.

262
00:12:19,140 --> 00:12:21,123
‫Bene.

263
00:12:24,500 --> 00:12:26,130
‫Quindi qualcosa è andato storto qui, immagino.

264
00:12:26,130 --> 00:12:28,773
‫Ok, ora torniamo a questi due.

265
00:12:30,130 --> 00:12:32,782
‫Creiamo ora solo il terzo che

266
00:12:32,782 --> 00:12:34,610
‫avevamo prima nell'ultima sezione.

267
00:12:34,610 --> 00:12:36,760
‫Che è l'avventuriero della neve.

268
00:12:36,760 --> 00:12:38,763
‫Quindi l'avventuriero della

269
00:12:42,490 --> 00:12:43,630
‫neve.

270
00:12:45,800 --> 00:12:47,080
‫Il prezzo era...

271
00:12:47,080 --> 00:12:48,280
‫Non sono più

272
00:12:48,280 --> 00:12:49,790
‫sicuro come 697 forse.

273
00:12:49,790 --> 00:12:51,973
‫E il punteggio

274
00:12:54,410 --> 00:12:57,870
‫è come sei o addirittura 4. 8.

275
00:12:57,870 --> 00:12:59,963
‫Ha mandato quel ragazzo.

276
00:13:01,360 --> 00:13:02,800
‫E quindi eccoci qui.

277
00:13:02,800 --> 00:13:04,600
‫Grande.

278
00:13:04,600 --> 00:13:05,810
‫Giusto per ricapitolare rapidamente la nostra funzione createTour.

279
00:13:05,810 --> 00:13:09,050
‫Quindi abbiamo un tentativo di cattura qui perché stiamo effettivamente utilizzando una

280
00:13:09,050 --> 00:13:10,740
‫funzione di attesa asincrona qui.

281
00:13:10,740 --> 00:13:13,833
‫Giusto, quindi usiamo asincroni aspettano perché

282
00:13:14,859 --> 00:13:16,100
‫questo tour. create restituisce una

283
00:13:16,100 --> 00:13:18,910
‫promessa che stiamo aspettando

284
00:13:18,910 --> 00:13:21,500
‫in modo che possiamo quindi memorizzare il documento

285
00:13:21,500 --> 00:13:23,530
‫del tour appena creato all'interno di questa

286
00:13:23,530 --> 00:13:25,340
‫variabile e quindi inviarlo insieme

287
00:13:25,340 --> 00:13:27,277
‫alla risposta al client qui sotto.

288
00:13:27,277 --> 00:13:30,280
‫Va bene, ma nel caso in cui si

289
00:13:30,280 --> 00:13:32,600
‫verifichi un errore, ad esempio un

290
00:13:32,600 --> 00:13:34,850
‫errore di convalida, tale

291
00:13:34,850 --> 00:13:37,120
‫errore verrà rilevato e invieremo qualcos'altro

292
00:13:37,120 --> 00:13:39,700
‫al client con questo messaggio di errore.

293
00:13:39,700 --> 00:13:41,900
‫Ecco come creiamo documenti usando la mangusta.

294
00:13:41,900 --> 00:13:44,890
‫Successivamente parleremo della lettura dei documenti.

