﻿1
00:00:01,070 --> 00:00:01,970
‫-: Va bene.

2
00:00:01,970 --> 00:00:05,850
‫Quindi ora creiamo un nuovo documento di prenotazione nel nostro database ogni

3
00:00:05,850 --> 00:00:09,083
‫volta che un utente acquista con successo un tour.

4
00:00:10,940 --> 00:00:13,400
‫Quindi siamo tornati qui nel controller

5
00:00:13,400 --> 00:00:15,130
‫di prenotazione e nella

6
00:00:15,130 --> 00:00:18,410
‫gara grezza, che crea le sessioni di pagamento, giusto?

7
00:00:18,410 --> 00:00:21,990
‫E ricorda che qui abbiamo questo URL di successo

8
00:00:21,990 --> 00:00:25,210
‫e questo URL è la base della funzionalità

9
00:00:25,210 --> 00:00:27,670
‫che implementeremo in questa lezione.

10
00:00:27,670 --> 00:00:30,400
‫Quindi, ogni volta che un check-out

11
00:00:30,400 --> 00:00:34,440
‫va a buon fine, il browser andrà automaticamente a questo

12
00:00:34,440 --> 00:00:39,140
‫URL, che in questo momento è semplicemente la nostra home page, giusto?

13
00:00:39,140 --> 00:00:41,190
‫È anche in questo momento, quindi

14
00:00:41,190 --> 00:00:44,360
‫quando un checkout va a buon fine vogliamo creare

15
00:00:44,360 --> 00:00:46,130
‫una nuova prenotazione, giusto?

16
00:00:46,130 --> 00:00:49,200
‫Quindi fondamentalmente vogliamo creare una nuova prenotazione

17
00:00:49,200 --> 00:00:53,010
‫ogni volta che si accede a questo URL qui.

18
00:00:53,010 --> 00:00:56,680
‫Ora potremmo creare un nuovo percorso per questo successo, ma poi

19
00:00:56,680 --> 00:00:59,940
‫dovremmo creare una pagina completamente nuova e in questo

20
00:00:59,940 --> 00:01:02,690
‫caso non ne vale davvero la pena.

21
00:01:02,690 --> 00:01:06,090
‫E questo perché ciò che faremo in questa

22
00:01:06,090 --> 00:01:08,860
‫lezione è comunque solo una soluzione

23
00:01:08,860 --> 00:01:12,040
‫temporanea perché non è davvero sicura, ok?

24
00:01:12,040 --> 00:01:14,690
‫Quindi ricorda come abbiamo detto alcune

25
00:01:14,690 --> 00:01:17,980
‫lezioni fa e quel bel diagramma che in

26
00:01:17,980 --> 00:01:21,500
‫seguito, quando un sito Web viene effettivamente distribuito su

27
00:01:21,500 --> 00:01:24,830
‫un server, avremo accesso all'oggetto sessione una volta

28
00:01:24,830 --> 00:01:27,200
‫completato l'acquisto utilizzando Stripe Webhooks.

29
00:01:27,200 --> 00:01:29,750
‫E quindi questi webhook saranno perfetti per

30
00:01:29,750 --> 00:01:31,970
‫noi per creare una nuova prenotazione.

31
00:01:31,970 --> 00:01:32,803
‫Va bene?

32
00:01:32,803 --> 00:01:35,040
‫Ma per ora, dal momento che non

33
00:01:35,040 --> 00:01:36,650
‫possiamo ancora farlo, usiamo una

34
00:01:36,650 --> 00:01:39,810
‫soluzione alternativa, che consiste semplicemente nell'inserire i dati di cui abbiamo

35
00:01:39,810 --> 00:01:43,810
‫bisogno per creare una nuova prenotazione direttamente in questo URL come stringa di query.

36
00:01:43,810 --> 00:01:44,670
‫Va bene?

37
00:01:44,670 --> 00:01:47,800
‫E abbiamo bisogno di creare una stringa di query

38
00:01:47,800 --> 00:01:51,620
‫perché Stripe farà semplicemente una richiesta di ricezione a questo URL qui,

39
00:01:51,620 --> 00:01:55,280
‫quindi non possiamo davvero inviare un corpo o alcun dato con

40
00:01:55,280 --> 00:01:57,680
‫esso tranne la stringa di query.

41
00:01:57,680 --> 00:01:58,513
‫Va bene?

42
00:01:58,513 --> 00:02:02,300
‫Quindi facciamolo e ciò di cui abbiamo bisogno qui sono fondamentalmente

43
00:02:02,300 --> 00:02:05,660
‫i tre campi richiesti nel nostro modello di prenotazione.

44
00:02:05,660 --> 00:02:07,200
‫Quindi tour,

45
00:02:07,200 --> 00:02:08,930
‫utente e prezzo.

46
00:02:08,930 --> 00:02:11,400
‫Quindi tour

47
00:02:11,400 --> 00:02:16,478
‫è uguale a req.

48
00:02:16,478 --> 00:02:16,478
‫parametri.

49
00:02:16,478 --> 00:02:17,311
‫turistico vero?

50
00:02:18,410 --> 00:02:19,243
‫Allora cosa ho fatto qui?

51
00:02:20,350 --> 00:02:21,793
‫Quindi è corretto.

52
00:02:23,500 --> 00:02:25,290
‫Successivamente abbiamo bisogno dell'utente.

53
00:02:25,290 --> 00:02:27,473
‫Quindi utente, che è su

54
00:02:28,760 --> 00:02:29,793
‫richiesta. utente. ID.

55
00:02:30,700 --> 00:02:32,887
‫E infine abbiamo bisogno del

56
00:02:32,887 --> 00:02:33,807
‫prezzo,

57
00:02:33,807 --> 00:02:35,290
‫che è al tour. prezzo.

58
00:02:35,290 --> 00:02:38,170
‫Va bene.

59
00:02:38,170 --> 00:02:39,003
‫Ora, come ho detto prima,

60
00:02:40,230 --> 00:02:41,063
‫questo ovviamente non è affatto

61
00:02:42,277 --> 00:02:43,110
‫sicuro perché in questo

62
00:02:44,190 --> 00:02:45,630
‫momento chiunque conosca questa struttura di URL qui potrebbe

63
00:02:45,630 --> 00:02:47,250
‫semplicemente chiamarla senza passare attraverso il processo di checkout, giusto?

64
00:02:47,250 --> 00:02:50,140
‫E così chiunque potrebbe

65
00:02:50,140 --> 00:02:54,760
‫davvero prenotare un tour senza dover pagare.

66
00:02:54,760 --> 00:02:57,510
‫Tutto quello che dovrebbero fare è aprire questo URL

67
00:02:57,510 --> 00:02:59,250
‫con il tour, l'utente e il

68
00:02:59,250 --> 00:03:01,930
‫prezzo e quindi creeranno automaticamente una nuova prenotazione

69
00:03:01,930 --> 00:03:03,630
‫senza nemmeno pagare, ok?

70
00:03:03,630 --> 00:03:06,530
‫Quindi, di nuovo, non è davvero sicuro, ma

71
00:03:06,530 --> 00:03:08,830
‫per ora come soluzione funziona

72
00:03:08,830 --> 00:03:11,900
‫bene perché non molte persone ovviamente sapranno che questo

73
00:03:11,900 --> 00:03:14,320
‫è il nostro URL di successo.

74
00:03:14,320 --> 00:03:16,080
‫Va bene?

75
00:03:16,080 --> 00:03:19,160
‫Perché in realtà nasconderemo questo fatto

76
00:03:19,160 --> 00:03:22,240
‫un po' tra un secondo, ok?

77
00:03:22,240 --> 00:03:24,920
‫Quindi creiamo ora la funzione che creerà effettivamente la nuova

78
00:03:24,920 --> 00:03:25,753
‫prenotazione nel database.

79
00:03:25,753 --> 00:03:28,790
‫Quindi questo andrà alle esportazioni dot

80
00:03:28,790 --> 00:03:30,910
‫create booking checkout e

81
00:03:30,910 --> 00:03:35,120
‫si chiama creare booking checkout perché in seguito

82
00:03:35,120 --> 00:03:37,083
‫avremo anche creare prenotazione,

83
00:03:38,320 --> 00:03:40,610
‫che sarà quindi accessibile dalla

84
00:03:40,610 --> 00:03:42,150
‫nostra API

85
00:03:42,150 --> 00:03:42,983
‫di

86
00:03:44,000 --> 00:03:44,833
‫prenotazione.

87
00:03:46,100 --> 00:03:47,150
‫Va bene.

88
00:03:47,150 --> 00:03:49,600
‫Comunque.

89
00:03:49,600 --> 00:03:52,980
‫Qui come sempre.

90
00:03:52,980 --> 00:03:56,313
‫E iniziamo ottenendo i nostri dati dalla stringa di query.

91
00:03:57,760 --> 00:03:59,360
‫E quindi per questo userò la strutturazione.

92
00:03:59,360 --> 00:04:00,193
‫Quindi

93
00:04:02,160 --> 00:04:03,523
‫tour, utente

94
00:04:06,460 --> 00:04:09,990
‫e prezzo sono disponibili su richiesta. interrogazione.

95
00:04:09,990 --> 00:04:13,370
‫Quindi ricorda che è la stringa di query.

96
00:04:13,370 --> 00:04:14,763
‫Quindi in realtà vogliamo solo creare

97
00:04:15,920 --> 00:04:17,520
‫una nuova prenotazione se tutti questi qui sono specificati.

98
00:04:17,520 --> 00:04:21,113
‫E quindi in pratica diciamo che se non esistono, allora giriamo e

99
00:04:21,113 --> 00:04:22,520
‫passiamo al middleware successivo.

100
00:04:22,520 --> 00:04:25,540
‫Quindi questa è la nostra procedura standard, giusto?

101
00:04:25,540 --> 00:04:28,830
‫Quindi diciamo che se

102
00:04:28,830 --> 00:04:31,720
‫non c'è

103
00:04:31,720 --> 00:04:35,060
‫tour e nessun utente

104
00:04:35,060 --> 00:04:37,980
‫e nessun prezzo.

105
00:04:37,980 --> 00:04:41,003
‫Quindi fondamentalmente richiediamo che esistano tutti su di essi.

106
00:04:42,190 --> 00:04:45,890
‫E quindi, in tal caso, passiamo al

107
00:04:45,890 --> 00:04:47,480
‫middleware successivo.

108
00:04:47,480 --> 00:04:48,680
‫Ora, qual è esattamente il prossimo middleware?

109
00:04:48,680 --> 00:04:50,050
‫Ricorda che vogliamo

110
00:04:50,050 --> 00:04:53,450
‫creare una nuova prenotazione su questo URL di casa.

111
00:04:53,450 --> 00:04:55,253
‫Quindi questo qui.

112
00:04:56,580 --> 00:04:58,790
‫Perché ancora una volta questo è l'URL

113
00:04:58,790 --> 00:05:02,420
‫che viene chiamato ogni volta che un acquisto ha esito positivo con Stripe.

114
00:05:02,420 --> 00:05:06,300
‫Quindi quello che dobbiamo fare è aggiungere questa funzione middleware che stiamo creando

115
00:05:06,300 --> 00:05:08,340
‫proprio ora nello stack middleware di questo

116
00:05:08,340 --> 00:05:09,660
‫gestore di route.

117
00:05:09,660 --> 00:05:12,380
‫Quindi che gestore di percorso è?

118
00:05:12,380 --> 00:05:15,610
‫Bene, è in vista delle rotte

119
00:05:15,610 --> 00:05:18,810
‫ed è questa, giusto?

120
00:05:18,810 --> 00:05:21,990
‫Quindi probabilmente suona un po' confuso.

121
00:05:21,990 --> 00:05:23,393
‫Ma ancora una volta questo è il

122
00:05:24,230 --> 00:05:26,620
‫percorso che verrà colpito quando una carta di credito viene addebitata con successo.

123
00:05:26,620 --> 00:05:30,943
‫E quindi questo è anche il momento in cui vogliamo creare una

124
00:05:32,170 --> 00:05:33,270
‫nuova prenotazione.

125
00:05:33,270 --> 00:05:36,040
‫E quindi qui è dove dobbiamo

126
00:05:36,040 --> 00:05:39,610
‫aggiungere quella funzione middleware, quindi facciamolo e

127
00:05:39,610 --> 00:05:42,080
‫richiediamo il nostro controller

128
00:05:42,080 --> 00:05:44,730
‫e ora lo duplichiamo qui.

129
00:05:44,730 --> 00:05:46,260
‫Quindi il controller di

130
00:05:46,260 --> 00:05:49,940
‫prenotazione e ora modificherò effettivamente qui proprio all'inizio perché non importa se

131
00:05:51,340 --> 00:05:53,350
‫abbiamo effettuato l'accesso o meno per questo.

132
00:05:53,350 --> 00:05:57,963
‫Quindi bookingcontroller. ottenere, o in

133
00:06:02,440 --> 00:06:06,850
‫realtà non creare

134
00:06:06,850 --> 00:06:09,540
‫bookingcheckout.

135
00:06:09,540 --> 00:06:11,743
‫Salvalo e va

136
00:06:13,130 --> 00:06:16,780
‫bene.

137
00:06:16,780 --> 00:06:18,300
‫E di nuovo questo è solo un po 'temporaneo

138
00:06:18,300 --> 00:06:19,770
‫fino a quando non avremo effettivamente distribuito i nostri

139
00:06:19,770 --> 00:06:20,603
‫siti Web su un

140
00:06:22,878 --> 00:06:25,060
‫server dove saremo quindi in grado di creare una soluzione migliore per questo.

141
00:06:25,060 --> 00:06:26,230
‫Va bene?

142
00:06:26,230 --> 00:06:29,150
‫Quindi qui nel controller di prenotazione è

143
00:06:29,150 --> 00:06:32,610
‫ora il momento di creare effettivamente quella nuova prenotazione.

144
00:06:32,610 --> 00:06:35,560
‫E quindi ora dobbiamo importare quel modello.

145
00:06:35,560 --> 00:06:36,950
‫Quindi facciamolo qui.

146
00:06:36,950 --> 00:06:41,230
‫Prenotazione e

147
00:06:41,230 --> 00:06:44,930
‫modello di prenotazione anche qui.

148
00:06:44,930 --> 00:06:48,903
‫E per qualche ragione qui ho questi strani percorsi.

149
00:06:50,810 --> 00:06:52,053
‫Quindi questi non hanno alcun senso.

150
00:06:53,520 --> 00:06:54,780
‫Non sono sicuro del motivo per cui li ho scritti in questo modo allora.

151
00:06:54,780 --> 00:06:55,613
‫Quindi quello che abbiamo lì è esattamente lo stesso di questo.

152
00:06:57,750 --> 00:06:59,363
‫Ma ovviamente questo è più leggibile.

153
00:07:01,280 --> 00:07:04,830
‫Comunque.

154
00:07:04,830 --> 00:07:08,170
‫Creiamo ora quella prenotazione.

155
00:07:08,170 --> 00:07:11,910
‫E quindi per questo dovremo

156
00:07:11,910 --> 00:07:15,160
‫attendere la prenotazione. creare con un

157
00:07:15,160 --> 00:07:21,810
‫oggetto

158
00:07:21,810 --> 00:07:27,353
‫di tour, utente e prezzo.

159
00:07:28,497 --> 00:07:29,330
‫E questo è tutto.

160
00:07:30,900 --> 00:07:32,040
‫Ora dobbiamo anche contrassegnare questo

161
00:07:32,040 --> 00:07:33,390
‫qui come asincrono e come

162
00:07:33,390 --> 00:07:34,223
‫sempre catchasync.

163
00:07:35,120 --> 00:07:35,953
‫Va bene?

164
00:07:36,810 --> 00:07:37,843
‫E non lo stiamo salvando bene

165
00:07:38,830 --> 00:07:40,310
‫in nessuna variabile perché non ne abbiamo davvero bisogno.

166
00:07:40,310 --> 00:07:42,660
‫Non lo invieremo indietro come risposta API.

167
00:07:44,220 --> 00:07:45,660
‫A questo punto tutto ciò che vogliamo fare qui è

168
00:07:46,582 --> 00:07:47,499
‫creare quel nuovo documento, ok?

169
00:07:53,252 --> 00:07:54,085
‫Il prossimo

170
00:07:54,085 --> 00:07:56,450
‫potrebbe quindi dire il prossimo, in questo modo.

171
00:07:56,450 --> 00:07:58,250
‫E quindi questo passerebbe

172
00:07:58,250 --> 00:08:01,470
‫al prossimo middleware, ma non è proprio l'ideale.

173
00:08:01,470 --> 00:08:04,970
‫Quindi, ancora una volta, tieni presente che il prossimo

174
00:08:04,970 --> 00:08:07,363
‫middleware nello stack è ovviamente questo

175
00:08:08,480 --> 00:08:10,680
‫e la panoramica di get.

176
00:08:12,280 --> 00:08:14,460
‫Quindi fondamentalmente la

177
00:08:14,460 --> 00:08:17,220
‫funzione che renderà la nostra pagina.

178
00:08:17,220 --> 00:08:18,990
‫Ma ricorda che questo URL è tutto questo.

179
00:08:18,990 --> 00:08:22,010
‫Quindi tutto questo con tutti questi dati qui.

180
00:08:22,010 --> 00:08:24,450
‫E quindi, ancora una volta, non è affatto sicuro.

181
00:08:24,450 --> 00:08:26,640
‫E quindi almeno rendiamolo

182
00:08:26,640 --> 00:08:29,041
‫un po' più sicuro, ok?

183
00:08:29,041 --> 00:08:30,800
‫E quindi

184
00:08:30,800 --> 00:08:35,023
‫quello che possiamo fare qui è fondamentalmente reindirizzare

185
00:08:35,980 --> 00:08:38,920
‫l'applicazione ora solo a questo URL.

186
00:08:38,920 --> 00:08:41,610
‫E quindi in pratica stai

187
00:08:41,610 --> 00:08:45,200
‫rimuovendo la stringa di query dall'URL originale.

188
00:08:45,200 --> 00:08:46,200
‫E quindi ora

189
00:08:46,200 --> 00:08:48,660
‫useremo qualcosa che non abbiamo mai usato prima.

190
00:08:48,660 --> 00:08:52,090
‫Quindi è fantastico, giusto?

191
00:08:52,090 --> 00:08:52,923
‫Quindi useremo il reindirizzamento.

192
00:08:53,837 --> 00:08:55,980
‫Va bene?

193
00:08:55,980 --> 00:08:57,277
‫Quindi ora quello che

194
00:08:59,007 --> 00:09:01,710
‫vogliamo è l'intero URL, ma senza la stringa di query.

195
00:09:01,710 --> 00:09:03,300
‫Quindi quello che potremmo

196
00:09:03,300 --> 00:09:04,763
‫fare è

197
00:09:05,860 --> 00:09:08,193
‫semplicemente imbrogliare e copiare questo qui.

198
00:09:10,810 --> 00:09:11,970
‫Ma rendiamolo un po' più elegante.

199
00:09:11,970 --> 00:09:15,230
‫Quindi quello che stiamo facendo è una richiesta. theoriginalurl, che abbiamo già usato

200
00:09:15,230 --> 00:09:16,803
‫prima.

201
00:09:18,000 --> 00:09:20,620
‫E quindi questo è fondamentalmente

202
00:09:20,620 --> 00:09:23,450
‫l'intero URL da cui proviene la richiesta.

203
00:09:23,450 --> 00:09:24,660
‫E quindi ora quello

204
00:09:24,660 --> 00:09:27,110
‫che dobbiamo fare è dividerlo per il punto interrogativo.

205
00:09:27,110 --> 00:09:31,096
‫Destra?

206
00:09:31,096 --> 00:09:33,090
‫Perché questo è il divisore tra la parte che effettivamente

207
00:09:33,090 --> 00:09:34,573
‫vogliamo e la stringa di query.

208
00:09:35,870 --> 00:09:38,090
‫Quindi, se lo dividiamo per il punto interrogativo,

209
00:09:38,090 --> 00:09:40,190
‫avremo un array in cui il primo

210
00:09:40,190 --> 00:09:43,090
‫elemento è questo e il secondo elemento è tutto il resto.

211
00:09:43,090 --> 00:09:44,283
‫Quindi la stringa di query stessa.

212
00:09:48,010 --> 00:09:48,843
‫E quindi

213
00:09:48,843 --> 00:09:52,500
‫qui prendiamo il primo elemento e quindi quella è la nostra homepage.

214
00:09:52,500 --> 00:09:55,053
‫Quindi l'URL del nostro percorso.

215
00:09:56,700 --> 00:10:00,040
‫E ciò che il reindirizzamento qui fa è fondamentalmente creare una nuova

216
00:10:00,040 --> 00:10:02,917
‫richiesta ma a questo nuovo URL che abbiamo passato lì.

217
00:10:02,917 --> 00:10:06,420
‫Va bene?

218
00:10:06,420 --> 00:10:08,430
‫Quindi questo ora creerà

219
00:10:08,430 --> 00:10:11,210
‫un'altra richiesta al nostro URL di percorso.

220
00:10:11,210 --> 00:10:13,480
‫Quindi affronteremo di nuovo questa strada.

221
00:10:13,480 --> 00:10:14,463
‫E così ancora una volta ci occuperemo di questo middleware qui.

222
00:10:15,560 --> 00:10:19,520
‫Quindi quello che stiamo solo creando.

223
00:10:19,520 --> 00:10:24,060
‫Quindi per la seconda volta lo faremo, ma ora il tour, l'utente e il prezzo non

224
00:10:24,060 --> 00:10:25,170
‫sono più definiti.

225
00:10:25,170 --> 00:10:27,680
‫E quindi passeremo al prossimo middleware, che alla fine è

226
00:10:27,680 --> 00:10:28,653
‫la funzione di

227
00:10:29,890 --> 00:10:32,900
‫gestione della panoramica di get, che poi renderemo semplicemente la home page, ok?

228
00:10:32,900 --> 00:10:37,230
‫Aveva senso?

229
00:10:37,230 --> 00:10:39,790
‫Quindi questa è una specie di circolare allora.

230
00:10:39,790 --> 00:10:42,850
‫Quindi fondamentalmente

231
00:10:42,850 --> 00:10:47,240
‫all'inizio percorreremo questa strada qui.

232
00:10:47,240 --> 00:10:49,860
‫Quindi viene creata una

233
00:10:49,860 --> 00:10:53,540
‫nuova prenotazione qui e reindirizziamo nuovamente l'applicazione su

234
00:10:53,540 --> 00:10:57,870
‫questa rotta, questa volta senza la stringa di query.

235
00:10:57,870 --> 00:10:59,080
‫E così,

236
00:10:59,080 --> 00:11:01,700
‫senza la stringa di query e questo

237
00:11:01,700 --> 00:11:03,870
‫middleware, siamo passati direttamente al successivo.

238
00:11:03,870 --> 00:11:05,100
‫E così solo allora

239
00:11:05,100 --> 00:11:07,430
‫arriviamo a è loggato e otteniamo una panoramica.

240
00:11:07,430 --> 00:11:10,860
‫Va bene?

241
00:11:10,860 --> 00:11:12,710
‫E quindi è davvero così, va bene?

242
00:11:12,710 --> 00:11:14,540
‫Bene, è proprio qui che

243
00:11:14,540 --> 00:11:16,370
‫questo è solo temporaneo perché

244
00:11:16,370 --> 00:11:18,120
‫non è sicuro.

245
00:11:18,120 --> 00:11:21,350
‫Tutti possono prenotare senza

246
00:11:21,350 --> 00:11:22,723
‫pagare.

247
00:11:24,020 --> 00:11:25,450
‫Quindi, di nuovo, sarebbe terribile per l'azienda.

248
00:11:25,450 --> 00:11:29,390
‫Ok, ora è il momento di testarlo.

249
00:11:29,390 --> 00:11:32,910
‫E quindi in realtà voglio farlo con quell'altro utente che abbiamo creato che

250
00:11:38,730 --> 00:11:39,563
‫è jonas@mailsac.

251
00:11:41,520 --> 00:11:42,523
‫E questo

252
00:11:43,700 --> 00:11:47,410
‫perché voglio vedere se riceviamo effettivamente quella ricevuta via e-mail da Stripe.

253
00:11:49,010 --> 00:11:49,963
‫Quindi

254
00:11:50,930 --> 00:11:54,133
‫accediamo con quell'utente al nostro sito web.

255
00:11:55,250 --> 00:12:02,990
‫Quindi disconnettiti.

256
00:12:02,990 --> 00:12:06,620
‫Beh, non funziona.

257
00:12:06,620 --> 00:12:09,510
‫Quello è strano.

258
00:12:09,510 --> 00:12:11,913
‫Ricarichiamo.

259
00:12:13,510 --> 00:12:17,280
‫E dovrebbe funzionare, quindi vediamo se abbiamo qualche errore nel

260
00:12:17,280 --> 00:12:18,466
‫nostro javascript.

261
00:12:18,466 --> 00:12:20,170
‫Perché in realtà è rivolto al cliente e otteniamo che

262
00:12:20,170 --> 00:12:21,063
‫Stripe non è definito.

263
00:12:23,080 --> 00:12:24,323
‫Vediamo se abbiamo lo stesso errore qui in

264
00:12:27,050 --> 00:12:28,090
‫questa pagina, che non dovremmo, giusto?

265
00:12:28,090 --> 00:12:29,023
‫E in

266
00:12:30,430 --> 00:12:33,520
‫realtà non c'è, ma torna in tutti i tour.

267
00:12:33,520 --> 00:12:36,230
‫Sì, è lì.

268
00:12:36,230 --> 00:12:38,160
‫Quindi la soluzione è spostarlo

269
00:12:39,210 --> 00:12:41,763
‫dal tour praticamente a tutte le pagine.

270
00:12:42,730 --> 00:12:46,180
‫Va bene?

271
00:12:46,180 --> 00:12:48,170
‫Quindi, per qualche motivo, l'impacchettatore di

272
00:12:48,170 --> 00:12:51,010
‫pacchi lo fa in modo che debba essere qui nell'ambito

273
00:12:51,010 --> 00:12:52,393
‫principale per tutti loro.

274
00:12:53,360 --> 00:12:54,660
‫Quindi per tutte le pagine, ok?

275
00:12:54,660 --> 00:12:58,480
‫Quindi in realtà mettiamolo qui in basso a destra

276
00:12:59,400 --> 00:13:01,193
‫prima del nostro pacchetto.

277
00:13:02,910 --> 00:13:04,010
‫Va bene?

278
00:13:04,010 --> 00:13:07,970
‫Riprova e così ora siamo a posto.

279
00:13:07,970 --> 00:13:08,920
‫Quindi

280
00:13:10,260 --> 00:13:12,703
‫disconnettiti e ha funzionato.

281
00:13:14,850 --> 00:13:16,933
‫Ora accedi.

282
00:13:19,090 --> 00:13:21,970
‫Ovviamente ora la nostra copia non c'è più.

283
00:13:26,010 --> 00:13:27,673
‫Uno due tre quattro.

284
00:13:29,530 --> 00:13:30,690
‫No, non è corretto.

285
00:13:30,690 --> 00:13:34,143
‫Prova uno due tre quattro.

286
00:13:35,170 --> 00:13:37,510
‫Quindi immagino di aver cambiato la password ad un certo punto, quindi

287
00:13:37,510 --> 00:13:38,343
‫proviamo una nuova

288
00:13:39,200 --> 00:13:40,083
‫password, che non funziona neanche.

289
00:13:42,183 --> 00:13:44,613
‫Proviamo a passare uno due tre quattro

290
00:13:53,790 --> 00:13:54,963
‫e ha funzionato.

291
00:13:56,400 --> 00:13:58,180
‫Quindi non è test uno due

292
00:13:58,180 --> 00:14:00,043
‫tre quattro, ma passa uno due tre quattro.

293
00:14:01,580 --> 00:14:04,470
‫Almeno qui nel mio caso.

294
00:14:04,470 --> 00:14:07,363
‫Allora proviamo a prenotare il diciamo

295
00:14:08,920 --> 00:14:10,460
‫lo sportivo.

296
00:14:10,460 --> 00:14:13,180
‫Va bene.

297
00:14:14,170 --> 00:14:15,223
‫Qui sotto.

298
00:14:16,100 --> 00:14:18,260
‫Prenota il tour e

299
00:14:18,260 --> 00:14:20,603
‫funziona ancora ed è quello

300
00:14:21,460 --> 00:14:22,763
‫costoso.

301
00:14:23,810 --> 00:14:25,940
‫(ride) Quindi quattro due quattro due e

302
00:14:26,960 --> 00:14:28,493
‫poi quattro due fino

303
00:14:30,520 --> 00:14:31,353
‫alla fine.

304
00:14:33,150 --> 00:14:34,340
‫Poi ecco qualche mese ed ecco qualche numero.

305
00:14:34,340 --> 00:14:35,310
‫Diciamo il mio nome per

306
00:14:37,010 --> 00:14:38,310
‫intero qui e ora andiamo a pagare.

307
00:14:39,260 --> 00:14:41,091
‫E darò un'occhiata alla barra degli indirizzi.

308
00:14:41,091 --> 00:14:42,100
‫E infatti otteniamo la nostra

309
00:14:42,100 --> 00:14:45,020
‫homepage, quindi il nostro URL di percorso senza alcuna stringa di query che abbiamo specificato prima.

310
00:14:45,020 --> 00:14:46,203
‫Quindi significa che qualcosa sta funzionando.

311
00:14:47,060 --> 00:14:52,020
‫Quindi diamo un'occhiata alla bussola e fai clic qui per ricaricare

312
00:14:52,020 --> 00:14:55,590
‫e otteniamo la nostra raccolta di prenotazioni.

313
00:14:55,590 --> 00:14:57,523
‫E questo è un buon segno.

314
00:14:59,970 --> 00:15:02,090
‫E infatti ci siamo.

315
00:15:02,090 --> 00:15:06,440
‫Viene creato il nostro primo documento.

316
00:15:06,440 --> 00:15:10,280
‫Quindi ricorda che era quel prezzo.

317
00:15:10,280 --> 00:15:13,550
‫Diamo anche un'occhiata all'id dell'utente che

318
00:15:13,550 --> 00:15:18,400
‫è questo che termina in otto E tre B.

319
00:15:20,520 --> 00:15:23,180
‫Quindi otto mi tre si, è corretto.

320
00:15:23,180 --> 00:15:24,540
‫E presumo che anche il tour sarà corretto.

321
00:15:24,540 --> 00:15:26,742
‫Così perfetta.

322
00:15:26,742 --> 00:15:30,360
‫Anche questo ha funzionato e quindi ora abbiamo davvero un

323
00:15:30,360 --> 00:15:32,673
‫modo per creare prenotazioni ogni volta

324
00:15:33,740 --> 00:15:36,350
‫che si verifica una prenotazione con Stripe.

325
00:15:38,100 --> 00:15:41,653
‫Diamo anche un'occhiata veloce alle nostre dashboard qui di nuovo.

326
00:15:43,280 --> 00:15:46,640
‫È davvero divertente.

327
00:15:46,640 --> 00:15:50,100
‫E immagino che devo solo ricaricare qui.

328
00:15:50,100 --> 00:15:51,220
‫Quindi vediamo.

329
00:15:51,220 --> 00:15:52,540
‫Ecco Jonas a qualunque cosa abbiamo chiamato che è.

330
00:15:52,540 --> 00:15:56,200
‫Abbiamo l'amante

331
00:15:56,200 --> 00:15:58,773
‫dello

332
00:15:59,772 --> 00:16:04,040
‫sport e perfetto.

333
00:16:04,040 --> 00:16:05,770
‫Adesso funziona.

334
00:16:05,770 --> 00:16:07,720
‫E il compito finale.

335
00:16:13,662 --> 00:16:14,745
‫Diamo ora un'occhiata a mailsac.

336
00:16:15,770 --> 00:16:21,580
‫Sacco di posta

337
00:16:22,460 --> 00:16:23,860
‫com e vedi se ho ricevuto

338
00:16:23,860 --> 00:16:25,100
‫la mia email lì.

339
00:16:25,100 --> 00:16:26,657
‫E in realtà non l'ho fatto, ma

340
00:16:26,657 --> 00:16:27,900
‫non è un grosso problema.

341
00:16:27,900 --> 00:16:30,410
‫Non sono sicuro che forse non funziona con i dati di test.

342
00:16:31,390 --> 00:16:32,223
‫E quindi per ora è tutto

343
00:16:32,223 --> 00:16:33,070
‫ciò che ho da mostrarvi sull'integrazione di Stripe.

344
00:16:34,316 --> 00:16:35,149
‫Ora di

345
00:16:36,490 --> 00:16:39,060
‫nuovo, una volta implementato un sito Web, utilizzeremo effettivamente

346
00:16:39,060 --> 00:16:39,923
‫Stripe Webhook per

347
00:16:42,190 --> 00:16:45,050
‫creare prenotazioni in un modo più sicuro e molto migliore.

348
00:16:45,050 --> 00:16:46,840
‫Va bene?

349
00:16:46,840 --> 00:16:51,200
‫Quindi prendiamoci ancora un minuto per ricapitolare quello che abbiamo fatto qui.

350
00:16:51,200 --> 00:16:53,160
‫Quindi in pratica abbiamo aggiunto

351
00:16:53,160 --> 00:16:55,670
‫tutte le variabili di cui abbiamo bisogno

352
00:16:55,670 --> 00:16:58,230
‫per creare una nuova prenotazione all'URL di successo.

353
00:16:58,230 --> 00:17:00,690
‫Quindi abbiamo aggiunto una nuova funzione

354
00:17:00,690 --> 00:17:03,320
‫middleware qui allo stack di quell'esatto percorso.

355
00:17:03,320 --> 00:17:05,050
‫Quindi questo qui.

356
00:17:05,050 --> 00:17:06,320
‫E così, ogni

357
00:17:06,320 --> 00:17:11,320
‫volta che viene colpito questo URL qui, cercheremo di creare una nuova prenotazione.

358
00:17:12,000 --> 00:17:14,010
‫Va bene?

359
00:17:14,970 --> 00:17:18,070
‫Ma quella nuova prenotazione viene ovviamente creata solo quando il tour, l'utente e il

360
00:17:18,070 --> 00:17:19,327
‫prezzo sono specificati nella query.

361
00:17:20,610 --> 00:17:24,320
‫E così in questa funzione middleware, se sono specificati

362
00:17:24,320 --> 00:17:26,270
‫bene nella query, creiamo qui

363
00:17:26,270 --> 00:17:27,790
‫una nuova prenotazione.

364
00:17:27,790 --> 00:17:31,200
‫Quindi, dopo aver fatto ciò, rimuoviamo la stringa di query

365
00:17:31,200 --> 00:17:34,387
‫dall'URL per rendere l'intero processo un po' meno trasparente

366
00:17:34,387 --> 00:17:35,220
‫per l'utente.

367
00:17:35,220 --> 00:17:38,380
‫Fondamentalmente in modo che l'intera stringa di

368
00:17:38,380 --> 00:17:43,290
‫query non venga visualizzata nella barra degli URL del nostro browser.

369
00:17:43,290 --> 00:17:45,180
‫E poi quaggiù reindirizziamo la

370
00:17:45,180 --> 00:17:48,610
‫nostra applicazione a questo nuovo URL di percorso qui, ok?

371
00:17:48,610 --> 00:17:50,900
‫E così in questo modo questo middleware qui

372
00:17:50,900 --> 00:17:53,870
‫verrà saltato e quindi la nostra normale homepage verrà semplicemente renderizzata.

373
00:17:53,870 --> 00:17:56,680
‫Va bene?

374
00:17:56,680 --> 00:17:59,240
‫Eliminiamo questo errore dell'app qui e

375
00:17:59,240 --> 00:18:02,880
‫la fabbrica di cui avremo effettivamente bisogno nella prossima lezione.

376
00:18:02,880 --> 00:18:05,400
‫Quindi in quella prossima lezione ci

377
00:18:05,400 --> 00:18:08,690
‫occuperemo effettivamente di implementare un'ultima parte del nostro sito Web,

378
00:18:08,690 --> 00:18:11,940
‫che fondamentalmente è questa pagina qui per le mie prenotazioni.

379
00:18:11,940 --> 00:18:15,650
‫E ciò che farà questa pagina è fondamentalmente visualizzare una carta

380
00:18:15,650 --> 00:18:19,233
‫del tour per ciascuno dei tour che abbiamo prenotato.

381
00:18:20,530 --> 00:18:21,363
‫Quindi sembra

382
00:18:22,320 --> 00:18:25,630
‫abbastanza simile a questa homepage, ma solo con

383
00:18:26,510 --> 00:18:30,340
‫i tour che l'utente attualmente connesso ha prenotato, va bene?

384
00:18:30,340 --> 00:18:33,660
‫Quindi questa è una bella caratteristica per un sito web, giusto?

385
00:18:33,660 --> 00:18:36,950
‫E quindi occupiamoci di questo nel prossimo.

