﻿1
00:00:01,060 --> 00:00:03,650
‫Instruktur: Jadi dalam video ini mari

2
00:00:03,650 --> 00:00:07,240
‫kita integrasikan Stripe ke backend kita dengan membuat titik akhir

3
00:00:07,240 --> 00:00:10,983
‫API yang akan membuat dan mengirim kembali sesi checkout Stripe.

4
00:00:12,870 --> 00:00:15,717
‫Jadi pada titik ini, kita sebenarnya akan mulai membuat

5
00:00:15,717 --> 00:00:17,110
‫sumber daya berikutnya.

6
00:00:17,110 --> 00:00:18,860
‫Dan begitulah pemesanannya.

7
00:00:18,860 --> 00:00:21,413
‫Dan saya akan mulai di sini dengan rute pemesanan.

8
00:00:24,995 --> 00:00:25,828
‫Jadi

9
00:00:27,200 --> 00:00:29,100
‫pemesanan rute. js.

10
00:00:29,100 --> 00:00:31,660
‫Dan kami telah melakukannya berkali-kali sekarang.

11
00:00:31,660 --> 00:00:33,150
‫Jadi saya akan menyalin semua

12
00:00:33,150 --> 00:00:34,480
‫kode ini dan

13
00:00:35,890 --> 00:00:37,843
‫meletakkannya di sini di rute pemesanan.

14
00:00:39,410 --> 00:00:42,073
‫Dan kemudian cukup hapus semua ini.

15
00:00:44,230 --> 00:00:45,923
‫Dan juga yang ini.

16
00:00:47,310 --> 00:00:50,060
‫Kami juga tidak perlu menggabungkan params

17
00:00:51,000 --> 00:00:54,530
‫dan kami akan memiliki pengontrol pemesanan alih-alih pengontrol

18
00:00:54,530 --> 00:00:55,593
‫ulasan.

19
00:00:57,850 --> 00:01:02,203
‫Jadi pengontrol pemesanan, mari kita buat itu.

20
00:01:03,844 --> 00:01:04,677
‫Jadi. js yang terlihat

21
00:01:09,317 --> 00:01:10,170
‫benar dan mari kita juga

22
00:01:11,520 --> 00:01:12,570
‫mengintegrasikan ini langsung ke app.js. js.

23
00:01:13,460 --> 00:01:17,503
‫Jadi mari kita letakkan di

24
00:01:18,970 --> 00:01:20,970
‫sini setelah router review.

25
00:01:20,970 --> 00:01:22,423
‫Jadi di sini

26
00:01:25,430 --> 00:01:29,940
‫itu hanya lagi pemesanan dan kemudian tentu saja di sini

27
00:01:32,100 --> 00:01:34,370
‫mengintegrasikannya ke dalam API kami.

28
00:01:34,370 --> 00:01:35,513
‫Jadi pemesanan

29
00:01:40,190 --> 00:01:42,220
‫dan di sini pemesanan router.

30
00:01:43,360 --> 00:01:44,913
‫Dan saya pikir itu seharusnya hanya pemesanan.

31
00:01:46,970 --> 00:01:49,223
‫Jadi mari kita perbaiki di sini juga.

32
00:01:50,170 --> 00:01:52,703
‫Dan memang kami menyebutnya sebagai booking router.

33
00:01:54,180 --> 00:01:57,010
‫Dan hal yang sama di sini, bukan

34
00:01:57,010 --> 00:01:58,880
‫pemesanan tetapi pemesanan rute.

35
00:01:58,880 --> 00:02:00,700
‫Jadi, simpanlah.

36
00:02:00,700 --> 00:02:01,863
‫Tutup yang ini dan

37
00:02:04,100 --> 00:02:05,990
‫yang ini dan yang ini juga di sini.

38
00:02:05,990 --> 00:02:09,090
‫Jadi sekarang mari kita lanjutkan dan buat

39
00:02:09,090 --> 00:02:11,670
‫rute pertama kita di sini.

40
00:02:11,670 --> 00:02:13,083
‫Jadi mari kita router. dapatkan dan rute yang

41
00:02:14,980 --> 00:02:19,980
‫akan dibuat di sini sekali lagi tidak akan

42
00:02:20,930 --> 00:02:24,160
‫mengikuti prinsip lainnya karena yang satu ini tidak benar-benar tentang membuat

43
00:02:24,160 --> 00:02:26,630
‫atau mendapatkan atau memperbarui pemesanan apa pun.

44
00:02:26,630 --> 00:02:30,080
‫Alih-alih, rute ini hanya untuk klien

45
00:02:30,080 --> 00:02:33,060
‫untuk mendapatkan sesi checkout.

46
00:02:33,060 --> 00:02:35,390
‫Jadi, mari kita sebut sesi checkout

47
00:02:35,390 --> 00:02:37,140
‫yang satu ini.

48
00:02:38,810 --> 00:02:41,733
‫Kemudian kita perlu melindungi rute ini

49
00:02:43,060 --> 00:02:45,600
‫sehingga hanya pengguna yang

50
00:02:45,600 --> 00:02:48,820
‫diautentikasi yang benar-benar bisa mendapatkan sesi checkout.

51
00:02:48,820 --> 00:02:50,380
‫Jadi masuk akal, kan?

52
00:02:50,380 --> 00:02:51,863
‫Dan kemudian tambahkan pengontrol pemesanan.

53
00:02:52,840 --> 00:02:55,603
‫Kita akan membuat penangan

54
00:02:56,460 --> 00:02:59,253
‫rute yang disebut get checkout session.

55
00:03:02,477 --> 00:03:06,558
‫Baiklah.

56
00:03:06,558 --> 00:03:07,391
‫Jadi mari

57
00:03:08,512 --> 00:03:12,422
‫kita salin yang ini dan buat di sini di ekspor. getCheckoutSession lalu permintaan ditanggapi

58
00:03:12,422 --> 00:03:14,839
‫selanjutnya.

59
00:03:16,600 --> 00:03:19,513
‫Dan sekarang mari kita mulai bekerja.

60
00:03:21,910 --> 00:03:24,740
‫Sekarang sebenarnya ada satu hal lagi yang perlu kita lakukan

61
00:03:24,740 --> 00:03:27,230
‫di sini di rute yang menentukan parameter URL.

62
00:03:27,230 --> 00:03:31,550
‫Dan itu akan menjadi ID tur.

63
00:03:31,550 --> 00:03:34,083
‫Oke, jadi pada dasarnya kami ingin

64
00:03:35,970 --> 00:03:39,350
‫klien mengirimkan ID tur yang saat ini mulai dipesan.

65
00:03:39,350 --> 00:03:42,920
‫Dan itu agar kita dapat mengisi sesi checkout dengan

66
00:03:42,920 --> 00:03:46,010
‫semua data yang diperlukan, seperti nama tur

67
00:03:46,010 --> 00:03:48,230
‫dan harga tur dan sebagainya.

68
00:03:48,230 --> 00:03:52,220
‫Baiklah, jadi kita sekarang memiliki akses ke ID tur dalam

69
00:03:52,220 --> 00:03:55,780
‫fungsi handler ini dan hal pertama yang sebenarnya akan

70
00:03:55,780 --> 00:03:57,470
‫kita lakukan adalah

71
00:03:57,470 --> 00:04:00,030
‫menemukan tur itu di database kita.

72
00:04:00,030 --> 00:04:02,610
‫Baiklah, jadi untuk itu kita membutuhkan model wisata tentunya.

73
00:04:02,610 --> 00:04:06,260
‫Jadi mari kita datang ke pengontrol tur

74
00:04:06,260 --> 00:04:09,210
‫dan mendapatkannya dari sana.

75
00:04:09,210 --> 00:04:11,190
‫Juga kita akan

76
00:04:11,190 --> 00:04:14,120
‫membutuhkan catchAsync ini dan semua ini.

77
00:04:14,120 --> 00:04:15,793
‫Jadi saya menyalin semuanya dan

78
00:04:16,870 --> 00:04:18,510
‫bahkan jika saya tidak

79
00:04:18,510 --> 00:04:20,730
‫membutuhkannya segera, saya mungkin akan membutuhkannya nanti.

80
00:04:20,730 --> 00:04:23,363
‫Baiklah.

81
00:04:24,629 --> 00:04:25,462
‫Jadi mari kita tata langkah kita di sini lagi.

82
00:04:27,840 --> 00:04:30,600
‫Jadi dapatkan tur yang saat ini dipesan.

83
00:04:30,600 --> 00:04:35,600
‫Kemudian sebagai langkah kedua, kami membuat sesi

84
00:04:38,250 --> 00:04:43,250
‫checkout dan akhirnya mengirimkannya ke klien.

85
00:04:45,550 --> 00:04:47,633
‫Baiklah, jadi langkah pertama sangat mudah.

86
00:04:53,376 --> 00:04:57,043
‫Jadi kita akan menunggu.

87
00:04:59,930 --> 00:05:01,053
‫Jadi tur. findbyId

88
00:05:02,140 --> 00:05:06,120
‫yang merupakan req. param ID tur

89
00:05:07,210 --> 00:05:10,173
‫Benar, jadi

90
00:05:14,790 --> 00:05:18,112
‫itulah nama yang kami berikan di parameter URL.

91
00:05:18,112 --> 00:05:19,810
‫Dan tentu saja, ini

92
00:05:19,810 --> 00:05:24,250
‫sekarang merupakan fungsi async dengan catchAsync selain itu atau sekitar itu, sebenarnya.

93
00:05:25,120 --> 00:05:29,623
‫Bagus, selanjutnya, mari kita buat sesi itu di sini.

94
00:05:33,170 --> 00:05:36,360
‫Dan untuk itu sebenarnya kita perlu menginstal

95
00:05:36,360 --> 00:05:38,410
‫paket NPM drive ini.

96
00:05:38,410 --> 00:05:40,323
‫Jadi mari kita lakukan itu di sini.

97
00:05:41,920 --> 00:05:45,650
‫NPM menginstal Stripe.

98
00:05:45,650 --> 00:05:50,290
‫Dan sementara itu kita akan pergi ke dashboard Stripe kita

99
00:05:50,290 --> 00:05:54,000
‫dan mendapatkan kunci rahasia kita dari sini.

100
00:05:54,000 --> 00:05:56,003
‫Jadi tekan saja tombol ini

101
00:05:57,030 --> 00:05:59,280
‫di sini lalu lanjutkan dan salin.

102
00:05:59,280 --> 00:06:03,040
‫Dan Anda melihat bahwa di sini di kunci itu

103
00:06:03,040 --> 00:06:04,630
‫sebenarnya tertulis tes.

104
00:06:04,630 --> 00:06:06,380
‫Dan sekali lagi, yang ini

105
00:06:06,380 --> 00:06:09,920
‫di sini hanya untuk pengujian dan kemudian setelah akun Stripe Anda aktif,

106
00:06:09,920 --> 00:06:12,530
‫Anda kemudian bisa mendapatkan kunci API langsung Anda.

107
00:06:12,530 --> 00:06:14,993
‫Oke, sekarang seperti halnya kunci lainnya,

108
00:06:16,390 --> 00:06:19,230
‫kami akan meletakkannya di sini di file konfigurasi kami.

109
00:06:19,230 --> 00:06:22,743
‫Jadi kunci rahasia Stripe sama dengan

110
00:06:25,490 --> 00:06:26,370
‫ini.

111
00:06:29,490 --> 00:06:32,670
‫Dan ini tidak benar di sini.

112
00:06:32,670 --> 00:06:34,120
‫Baiklah, jadi salin yang ini.

113
00:06:40,700 --> 00:06:43,163
‫Kembali ke pengontrol pemesanan kami.

114
00:06:44,730 --> 00:06:46,610
‫Mari sekarang benar-benar membutuhkan paket

115
00:06:46,610 --> 00:06:49,400
‫drive ini dengan telah berhasil diinstal di sini.

116
00:06:49,400 --> 00:06:52,620
‫Dan hanya dengan semua paket lain sebelumnya, harap

117
00:06:52,620 --> 00:06:54,810
‫pastikan bahwa Anda benar-benar menggunakan versi

118
00:06:54,810 --> 00:06:56,780
‫yang sama dengan saya.

119
00:06:56,780 --> 00:06:58,030
‫Dan Anda melihat bahwa saya di sini di 7 yang baru. 0. 0.

120
00:06:59,050 --> 00:07:02,137
‫Jadi ini benar-benar baru.

121
00:07:03,120 --> 00:07:04,730
‫Dan sebenarnya itu karena banyak

122
00:07:04,730 --> 00:07:07,650
‫hal yang baru saja berubah dengan Stripe beberapa hari yang lalu.

123
00:07:07,650 --> 00:07:10,370
‫Jadi saya harus mengubah beberapa implementasi ini.

124
00:07:10,370 --> 00:07:13,113
‫Bagaimanapun, const

125
00:07:15,190 --> 00:07:20,190
‫stripe sama membutuhkan dan kemudian stripe.

126
00:07:24,440 --> 00:07:26,000
‫Sekarang ini di sini kemudian akan mengekspos fungsi pada dasarnya.

127
00:07:26,000 --> 00:07:28,890
‫Dan biasanya yang kami lakukan segera adalah memasukkan

128
00:07:28,890 --> 00:07:30,940
‫kunci rahasia kami ke dalamnya.

129
00:07:30,940 --> 00:07:34,670
‫Dan itu kemudian akan memberi kita objek Stripe

130
00:07:34,670 --> 00:07:37,020
‫yang bisa kita kerjakan.

131
00:07:37,020 --> 00:07:38,123
‫Sehingga saat ini sedang dalam proses. lingkungan STRIPE_SECRET_KEY.

132
00:07:39,410 --> 00:07:43,057
‫Oke, dan sekarang mari kita gunakan itu.

133
00:07:46,930 --> 00:07:51,093
‫Jadi kita katakan Stripe. Periksa. sidang. membuat.

134
00:07:52,700 --> 00:07:57,700
‫Dan kemudian objek opsi yang biasa.

135
00:08:02,450 --> 00:08:06,040
‫Baiklah, sekarang ada banyak sekali pilihan yang

136
00:08:06,040 --> 00:08:08,680
‫bisa kita atur di sini.

137
00:08:08,680 --> 00:08:10,060
‫Tetapi hanya tiga dari mereka yang diperlukan.

138
00:08:10,060 --> 00:08:12,290
‫Jadi yang pertama adalah jenis metode pembayaran.

139
00:08:12,290 --> 00:08:15,083
‫Jadi jenis metode pembayaran.

140
00:08:16,010 --> 00:08:20,213
‫Jadi itu adalah array di mana kita dapat menentukan

141
00:08:22,950 --> 00:08:26,740
‫beberapa jenis dan kartu untuk kartu kredit.

142
00:08:26,740 --> 00:08:28,920
‫Dan saat ini sebenarnya semua opsi

143
00:08:28,920 --> 00:08:31,780
‫pembayaran yang dapat kita gunakan untuk checkout Stripe.

144
00:08:31,780 --> 00:08:34,330
‫Tetapi saya membaca bahwa di masa depan mereka akan menambahkan lebih banyak lagi.

145
00:08:34,330 --> 00:08:38,130
‫Jadi Anda bisa mendapatkan informasi dengan itu.

146
00:08:38,130 --> 00:08:41,550
‫Kemudian kita perlu menentukan URL sukses.

147
00:08:41,550 --> 00:08:44,023
‫Dan pada dasarnya itulah URL yang

148
00:08:46,240 --> 00:08:49,350
‫akan dipanggil segera setelah kartu kredit berhasil ditagih.

149
00:08:49,350 --> 00:08:52,690
‫Jadi segera setelah pembelian berhasil, pengguna

150
00:08:52,690 --> 00:08:55,780
‫akan diarahkan ke URL ini.

151
00:08:55,780 --> 00:08:58,860
‫Dan untuk saat ini, mari kita tentukan itu sebagai beranda kita.

152
00:08:58,860 --> 00:09:02,123
‫Baiklah dan kita akan melakukannya

153
00:09:03,060 --> 00:09:06,290
‫seperti sebelumnya dengan req. protokol:// dan kemudian

154
00:09:06,290 --> 00:09:10,963
‫meminta. mendapatkan tuan rumah.

155
00:09:14,270 --> 00:09:18,663
‫Jadi pada dasarnya hanya URL beranda kami.

156
00:09:20,670 --> 00:09:23,403
‫Kemudian kita juga perlu menentukan URL pembatalan.

157
00:09:24,330 --> 00:09:27,707
‫Jadi seperti ini.

158
00:09:30,530 --> 00:09:31,773
‫Dan yang ini akan serupa.

159
00:09:33,010 --> 00:09:34,763
‫Jadi pada dasarnya ini adalah halaman

160
00:09:36,260 --> 00:09:38,800
‫tempat pengguna pergi jika mereka memilih untuk membatalkan pembayaran saat ini.

161
00:09:38,800 --> 00:09:41,980
‫Dan sebenarnya mari kita buat mereka pergi ke

162
00:09:41,980 --> 00:09:44,610
‫halaman tur di mana mereka sebelumnya.

163
00:09:44,610 --> 00:09:46,360
‫Dan itu pada dasarnya adalah tur/tur. siput.

164
00:09:46,360 --> 00:09:50,493
‫Selanjutnya, kita juga bisa menentukan email pelanggan.

165
00:09:56,040 --> 00:09:59,870
‫Dan itu sangat berguna karena tentu saja kita sudah

166
00:09:59,870 --> 00:10:02,410
‫memiliki akses ke email pelanggan.

167
00:10:02,410 --> 00:10:05,380
‫Jadi dengan ini kami dapat menyelamatkan pengguna satu langkah

168
00:10:05,380 --> 00:10:08,090
‫dan membuat pengalaman checkout jauh lebih lancar.

169
00:10:08,090 --> 00:10:11,080
‫Baiklah, jadi ingatlah bahwa ini adalah rute yang dilindungi.

170
00:10:11,080 --> 00:10:15,230
‫Dan seperti biasa pengguna sudah sesuai permintaan.

171
00:10:15,230 --> 00:10:19,320
‫Jadi kita bisa mengatakan permintaan. pengguna. surel.

172
00:10:19,320 --> 00:10:23,763
‫Selanjutnya, kita juga

173
00:10:25,030 --> 00:10:28,860
‫dapat menentukan bidang khusus yang disebut ID referensi klien.

174
00:10:28,860 --> 00:10:31,560
‫Dan itu terdengar agak aneh tetapi

175
00:10:31,560 --> 00:10:34,610
‫sebenarnya itu akan menjadi sangat penting bagi kami.

176
00:10:34,610 --> 00:10:36,340
‫Jadi bidang ini akan memungkinkan

177
00:10:36,340 --> 00:10:39,900
‫kita untuk memasukkan beberapa data tentang sesi yang sedang kita buat.

178
00:10:39,900 --> 00:10:42,430
‫Dan itu penting karena nanti setelah pembelian

179
00:10:42,430 --> 00:10:44,400
‫berhasil, kita akan mendapatkan

180
00:10:44,400 --> 00:10:46,530
‫akses ke objek sesi lagi.

181
00:10:46,530 --> 00:10:50,250
‫Dan saat itu, kami ingin membuat pemesanan

182
00:10:50,250 --> 00:10:52,830
‫baru di database kami.

183
00:10:52,830 --> 00:10:54,400
‫Jadi ingatlah diagram

184
00:10:54,400 --> 00:10:56,380
‫yang saya tunjukkan di kuliah terakhir.

185
00:10:56,380 --> 00:10:57,610
‫Pada dasarnya apa yang saya bicarakan

186
00:10:57,610 --> 00:10:59,240
‫di sini adalah langkah terakhir dalam diagram itu.

187
00:10:59,240 --> 00:11:01,890
‫Dan juga ingat bagaimana itu hanya

188
00:11:01,890 --> 00:11:04,670
‫akan bekerja dengan situs web yang digunakan.

189
00:11:04,670 --> 00:11:06,130
‫Tapi tetap saja, mari kita persiapkan untuk itu di sini.

190
00:11:06,130 --> 00:11:08,900
‫Oke, jadi untuk membuat pemesanan baru

191
00:11:08,900 --> 00:11:12,860
‫di database kami, kami memerlukan ID pengguna, ID tur, dan harganya.

192
00:11:12,860 --> 00:11:16,890
‫Ingat bahwa?

193
00:11:16,890 --> 00:11:18,260
‫Dan di sesi

194
00:11:18,260 --> 00:11:20,460
‫ini kita sudah memiliki akses ke

195
00:11:20,460 --> 00:11:22,315
‫email pengguna dan dari situ

196
00:11:22,315 --> 00:11:26,290
‫kita bisa membuat ulang ID pengguna karena email di sini unik.

197
00:11:26,290 --> 00:11:28,520
‫Kami juga akan menentukan harga tur

198
00:11:28,520 --> 00:11:31,900
‫di sini dalam sedetik dan semua yang hilang adalah ID tur.

199
00:11:31,900 --> 00:11:35,100
‫Dan itulah yang akan kita tentukan di sini pada

200
00:11:35,100 --> 00:11:37,130
‫bidang khusus ini pada dasarnya.

201
00:11:37,130 --> 00:11:39,263
‫Jadi itu disebut ID referensi klien.

202
00:11:41,320 --> 00:11:45,763
‫Dan semua yang baru saja saya jelaskan sebelumnya sebenarnya akan

203
00:11:47,500 --> 00:11:49,750
‫jauh lebih masuk akal

204
00:11:49,750 --> 00:11:52,210
‫setelah kita benar-benar menerapkan langkah terakhir

205
00:11:52,210 --> 00:11:54,630
‫membuat pemesanan di database, bukan?

206
00:11:54,630 --> 00:11:58,240
‫Bagaimanapun, ID tur itu berdasarkan permintaan. param ID tur.

207
00:11:58,240 --> 00:12:02,667
‫Baiklah, dan sekarang akhirnya,

208
00:12:05,371 --> 00:12:08,080
‫kita akan menentukan beberapa detail tentang produk itu sendiri.

209
00:12:08,080 --> 00:12:11,010
‫Jadi tur kami dalam hal ini.

210
00:12:11,010 --> 00:12:13,093
‫Dan itulah yang

211
00:12:14,100 --> 00:12:17,720
‫disebut item baris yang menerima array objek.

212
00:12:17,720 --> 00:12:19,700
‫Jadi pada dasarnya satu per item

213
00:12:19,700 --> 00:12:22,330
‫dan dalam kasus kami itu hanya akan menjadi satu.

214
00:12:22,330 --> 00:12:24,733
‫Jadi kita untuk menentukan

215
00:12:25,940 --> 00:12:28,640
‫nama produk dan itu di tour. nama dan seperti biasa kami juga

216
00:12:30,160 --> 00:12:34,810
‫menambahkan tur ke nama itu.

217
00:12:34,810 --> 00:12:39,423
‫Kemudian kita juga bisa menentukan deskripsi.

218
00:12:41,720 --> 00:12:43,933
‫Dan semua nama bidang ini di sini mereka benar-benar berasal dari Stripe.

219
00:12:45,840 --> 00:12:48,950
‫Jadi kita tidak bisa membuat ladang kita sendiri.

220
00:12:48,950 --> 00:12:51,200
‫Jadi jika Anda mencoba melakukan itu, Anda akan benar-benar mendapatkan kesalahan.

221
00:12:51,200 --> 00:12:54,683
‫Baiklah, jadi dalam deskripsi saya akan memasukkan ringkasan tur, sehingga

222
00:12:55,530 --> 00:12:57,510
‫frasa singkat yang bagus yang

223
00:12:57,510 --> 00:12:59,373
‫akan menggambarkan setiap tur.

224
00:13:00,540 --> 00:13:05,540
‫Kemudian kita juga dapat menentukan array gambar.

225
00:13:06,400 --> 00:13:10,750
‫Sekarang gambar-gambar ini di sini mereka harus menjadi gambar langsung.

226
00:13:10,750 --> 00:13:14,120
‫Jadi pada dasarnya gambar yang di-host di

227
00:13:14,120 --> 00:13:17,260
‫internet karena Stripe akan benar-benar mengunggah gambar

228
00:13:17,260 --> 00:13:20,090
‫ini ke server mereka sendiri.

229
00:13:20,090 --> 00:13:21,680
‫Dan ini adalah salah satu hal

230
00:13:21,680 --> 00:13:23,740
‫yang hanya dapat kami lakukan setelah situs web di-deploy.

231
00:13:23,740 --> 00:13:27,470
‫Tetapi untuk saat ini, sebagai pengganti, pada dasarnya saya akan menggunakan

232
00:13:27,470 --> 00:13:30,680
‫yang dari situs web contoh yang dihosting di natours. pengembang

233
00:13:30,680 --> 00:13:34,760
‫Jadi mari kita pergi ke situs web itu.

234
00:13:34,760 --> 00:13:36,623
‫Jadi itu yang ini di natours. pengembang

235
00:13:38,100 --> 00:13:41,050
‫Dan gambar yang akan saya pilih adalah gambar sampul.

236
00:13:41,050 --> 00:13:44,500
‫Jadi mari kita periksa gambar itu.

237
00:13:44,500 --> 00:13:46,283
‫Jadi yang ini di sini dan salin alamat tautan di sini.

238
00:13:47,130 --> 00:13:51,103
‫Baiklah.

239
00:13:52,396 --> 00:13:53,710
‫Jadi ini adalah

240
00:13:53,710 --> 00:13:58,140
‫array karena kita dapat menentukan banyak gambar tetapi kita benar-benar hanya menginginkan salah satunya.

241
00:13:58,140 --> 00:14:00,673
‫Dan memang kita memiliki alam. dev/images/tours dan kemudian

242
00:14:01,790 --> 00:14:05,950
‫nama gambarnya.

243
00:14:05,950 --> 00:14:07,940
‫Dan yang satu ini akan saya ganti dengan tour. sampul gambar.

244
00:14:07,940 --> 00:14:11,810
‫Dan itu akan

245
00:14:11,810 --> 00:14:14,950
‫berhasil karena nama-nama gambar di alam. dev persis sama dengan yang kami miliki di

246
00:14:14,950 --> 00:14:18,920
‫sini di proyek kami.

247
00:14:18,920 --> 00:14:20,053
‫Jadi tur. gambarSampul.

248
00:14:21,560 --> 00:14:23,500
‫Jadi ini adalah satu

249
00:14:26,580 --> 00:14:29,980
‫hal lagi yang sebenarnya perlu kita ubah setelah kita membuat situs web kita menjadi produksi.

250
00:14:29,980 --> 00:14:32,520
‫Dan saya menyimpan daftar hal-hal

251
00:14:32,520 --> 00:14:35,630
‫itu agar kita tidak melupakan apa pun.

252
00:14:35,630 --> 00:14:37,280
‫Pokoknya, selanjutnya adalah jumlahnya.

253
00:14:38,450 --> 00:14:40,760
‫Jadi pada dasarnya harga produk

254
00:14:40,760 --> 00:14:42,940
‫yang sedang dibeli.

255
00:14:42,940 --> 00:14:44,163
‫Jadi itulah wisata. harga dan sekarang

256
00:14:45,010 --> 00:14:47,990
‫kita perlu mengalikannya dengan 100.

257
00:14:47,990 --> 00:14:50,660
‫Karena jumlah ini diperkirakan dalam sen.

258
00:14:50,660 --> 00:14:53,673
‫Jadi satu dolar atau satu Euro atau benar-benar sebagian

259
00:14:54,870 --> 00:14:57,270
‫besar mata uang memiliki 100 sen.

260
00:14:57,270 --> 00:15:00,640
‫Jadi satu dolar sama dengan 100 sen.

261
00:15:00,640 --> 00:15:02,920
‫Jadi untuk mengubahnya menjadi sen, kalikan saja dengan 100.

262
00:15:02,920 --> 00:15:06,663
‫Kemudian kita juga perlu menentukan mata uang.

263
00:15:08,040 --> 00:15:11,790
‫Dan itulah dalam hal ini USD.

264
00:15:11,790 --> 00:15:14,110
‫Tapi bisa juga

265
00:15:14,110 --> 00:15:18,850
‫seperti, untuk Euro itu EUR dan untuk mata uang

266
00:15:20,439 --> 00:15:23,560
‫lainnya, Anda mungkin harus melihat dokumentasinya.

267
00:15:23,560 --> 00:15:25,090
‫Jadi tentu saja saya

268
00:15:25,090 --> 00:15:27,670
‫tidak bisa menutupi semua mata uang yang ada, bukan?

269
00:15:27,670 --> 00:15:31,000
‫Pokoknya, akhirnya kami juga menentukan kuantitas.

270
00:15:31,000 --> 00:15:35,760
‫Dan itu hanya satu tur dalam kasus ini.

271
00:15:35,760 --> 00:15:38,263
‫Jadi itu sebenarnya.

272
00:15:41,110 --> 00:15:43,370
‫Dan pada dasarnya bagian

273
00:15:43,370 --> 00:15:47,230
‫ini adalah informasi tentang sesi itu sendiri.

274
00:15:47,230 --> 00:15:48,800
‫Dan berikut adalah

275
00:15:48,800 --> 00:15:51,630
‫informasi tentang produk yang akan dibeli pengguna.

276
00:15:51,630 --> 00:15:54,060
‫Baiklah, sekarang mari kita simpan sesi.

277
00:15:54,060 --> 00:15:56,883
‫Jadi sesi const dan sekarang kita

278
00:15:57,810 --> 00:15:59,090
‫menunggu ini.

279
00:16:00,270 --> 00:16:03,000
‫Jadi ini buat di sini pada dasarnya

280
00:16:03,000 --> 00:16:05,850
‫mengembalikan premis karena menyetel semua opsi ini di

281
00:16:05,850 --> 00:16:08,110
‫sini pada dasarnya akan melakukan

282
00:16:08,110 --> 00:16:11,060
‫panggilan API ke Stripe dan tentu saja itu

283
00:16:11,060 --> 00:16:14,341
‫adalah fungsi asinkron yang harus kita tunggu di sini.

284
00:16:14,341 --> 00:16:16,470
‫Oke, tapi bagaimanapun ini

285
00:16:16,470 --> 00:16:19,790
‫adalah sesi kita dan jadi langkah terakhir

286
00:16:19,790 --> 00:16:22,740
‫tentu saja mengirimkannya kembali ke klien.

287
00:16:22,740 --> 00:16:24,020
‫Jadi seperti

288
00:16:24,020 --> 00:16:25,493
‫biasa, statusnya sukses.

289
00:16:29,480 --> 00:16:31,743
‫Dan kemudian mari kita kirimkan sesi seperti ini.

290
00:16:33,460 --> 00:16:36,463
‫Baiklah, jadi memang seharusnya begitu.

291
00:16:38,896 --> 00:16:42,510
‫Router kami sudah dikonfigurasi dan saya

292
00:16:42,510 --> 00:16:44,980
‫pikir kami sekarang

293
00:16:44,980 --> 00:16:48,260
‫dapat mencobanya di tukang pos.

294
00:16:48,260 --> 00:16:49,950
‫Baiklah, sekarang nanti tentunya

295
00:16:49,950 --> 00:16:53,470
‫kita tidak akan membiarkan siapapun melakukan ini menggunakan tukang pos

296
00:16:53,470 --> 00:16:55,370
‫karena itu tidak masuk akal.

297
00:16:55,370 --> 00:16:57,650
‫Tapi sekarang karena kami hanya

298
00:16:57,650 --> 00:16:59,990
‫menguji ini, ini sangat masuk akal.

299
00:16:59,990 --> 00:17:02,060
‫Baiklah, jadi mari kita

300
00:17:02,060 --> 00:17:05,660
‫pergi ke tukang pos dan membuat permintaan baru.

301
00:17:05,660 --> 00:17:08,483
‫Jadi itu akan

302
00:17:11,150 --> 00:17:15,770
‫di pemesanan/ eh, saya tidak begitu yakin.

303
00:17:17,768 --> 00:17:19,313
‫Ya, jadi sesi checkout dan kemudian /tourId.

304
00:17:20,261 --> 00:17:24,473
‫Baiklah, jadi mari kita tur kita di sini.

305
00:17:26,330 --> 00:17:28,823
‫Untuk mendapatkan ID dari sana pada dasarnya.

306
00:17:31,030 --> 00:17:33,323
‫Jadi mari kita lakukan Penjelajah Laut.

307
00:17:34,560 --> 00:17:36,263
‫Oke, dan itu seharusnya sudah cukup.

308
00:17:41,700 --> 00:17:45,950
‫Oh tunggu, kami tentu saja tidak masuk.

309
00:17:45,950 --> 00:17:47,963
‫Jadi login di sini.

310
00:17:50,022 --> 00:17:51,363
‫Sekarang kita berada di admin, tetapi

311
00:17:54,010 --> 00:17:55,460
‫mari kita gunakan orang lain di sini.

312
00:17:55,460 --> 00:17:57,370
‫Dan saya pikir kami menggunakan

313
00:17:57,370 --> 00:17:59,860
‫Leo sebelumnya, jadi sekarang mari gunakan pengguna itu.

314
00:17:59,860 --> 00:18:01,813
‫Sekarang kami memiliki kata sandi yang salah.

315
00:18:04,250 --> 00:18:07,053
‫Baiklah jadi mari kita lihat apa lagi yang kita miliki.

316
00:18:08,761 --> 00:18:11,320
‫Jadi pengguna lain apa yang bisa kita gunakan.

317
00:18:11,320 --> 00:18:14,470
‫Dan sebenarnya mari kita gunakan Monica di sini.

318
00:18:14,470 --> 00:18:16,683
‫Mengapa tidak?

319
00:18:19,990 --> 00:18:21,530
‫Jadi mudah-mudahan kata sandinya benar.

320
00:18:21,530 --> 00:18:25,753
‫Nah, mari kita coba ganti ini

321
00:18:27,500 --> 00:18:30,410
‫di sini dengan test1234.

322
00:18:32,170 --> 00:18:33,883
‫Yah, mungkin kami pernah mengubah

323
00:18:35,290 --> 00:18:38,040
‫kata sandi semua pengguna ini di beberapa kuliah lain sebelumnya.

324
00:18:38,040 --> 00:18:41,493
‫Jadi mari kita gunakan John di sini.

325
00:18:43,740 --> 00:18:46,320
‫Jadi saya tahu bahwa kami tidak pernah menggunakan

326
00:18:46,320 --> 00:18:48,740
‫John, jadi sekarang ini harus berhasil.

327
00:18:48,740 --> 00:18:51,523
‫Oh, saya benar-benar melihat kesalahan yang baru saja saya lakukan sebelumnya.

328
00:18:55,250 --> 00:18:59,000
‫Jadi di sini bukan natours, itu harus menjadi contoh. com.

329
00:18:59,000 --> 00:19:02,583
‫Jadi mari kita coba lagi dengan Monica di sini.

330
00:19:06,410 --> 00:19:08,460
‫Atau benar-benar hanya dengan John.

331
00:19:11,990 --> 00:19:13,813
‫Ini lebih sulit dari yang saya harapkan.

332
00:19:14,850 --> 00:19:18,000
‫Tapi sekarang akhirnya kita login.

333
00:19:18,000 --> 00:19:19,963
‫Baiklah, dan dengan itu,

334
00:19:21,130 --> 00:19:24,500
‫mari kita coba untuk mendapatkan sesi checkout kita.

335
00:19:24,500 --> 00:19:26,743
‫Kami kehilangan otorisasi dari sini.

336
00:19:29,180 --> 00:19:31,463
‫Sekali lagi, dan sekarang kami mendapatkan beberapa kesalahan nyata di sini.

337
00:19:33,180 --> 00:19:37,270
‫Jadi sesuatu yang sebenarnya benar-benar berasal dari kode

338
00:19:37,270 --> 00:19:40,370
‫yang baru saja kita tulis.

339
00:19:40,370 --> 00:19:41,713
‫Baiklah.

340
00:19:43,220 --> 00:19:44,550
‫Jadi mari kita periksa.

341
00:19:44,550 --> 00:19:46,223
‫Dan masalahnya adalah di sini sebenarnya sesi.

342
00:19:47,740 --> 00:19:51,200
‫Jadi garis. Periksa. sesi.

343
00:19:51,200 --> 00:19:54,963
‫Sekali lagi.

344
00:19:57,400 --> 00:19:58,383
‫Kali ini butuh waktu lebih lama yang merupakan pertanda baik.

345
00:19:59,680 --> 00:20:03,850
‫Dan kami memiliki kesalahan lain.

346
00:20:03,850 --> 00:20:05,740
‫Jadi baris 15 tidak dapat membaca slug dari node.js.

347
00:20:05,740 --> 00:20:09,573
‫Baiklah, itu pasti aneh karena harus

348
00:20:12,200 --> 00:20:15,510
‫ada siput di tur ini.

349
00:20:15,510 --> 00:20:18,463
‫Jadi uh ya Anda lihat di

350
00:20:19,980 --> 00:20:21,290
‫sini sebenarnya.

351
00:20:22,930 --> 00:20:25,660
‫Jadi mungkin ada yang

352
00:20:25,660 --> 00:20:29,660
‫salah dengan benar-benar membaca tur ini.

353
00:20:29,660 --> 00:20:30,623
‫Yang saya tidak bisa benar-benar mengerti mengapa itu terjadi.

354
00:20:31,580 --> 00:20:35,083
‫Tapi mari kita coba log tur ke konsol.

355
00:20:35,970 --> 00:20:39,273
‫Baiklah, dan sebenarnya kita mendapatkan null.

356
00:20:46,970 --> 00:20:50,000
‫Yang mungkin berarti ada

357
00:20:50,000 --> 00:20:54,480
‫ID tur yang tidak ditentukan dengan benar.

358
00:20:54,480 --> 00:20:55,763
‫Oh, inilah masalahnya.

359
00:20:56,750 --> 00:20:58,790
‫Jadi saya memilikinya, ID semua huruf

360
00:20:58,790 --> 00:21:02,330
‫besar, tetapi kemudian di sini di controller saya memiliki D dalam huruf kecil.

361
00:21:02,330 --> 00:21:06,450
‫Jadi seperti ini.

362
00:21:06,450 --> 00:21:07,840
‫Dan itulah jenis

363
00:21:07,840 --> 00:21:10,790
‫bug kecil yang terjadi sepanjang waktu dengan jelas.

364
00:21:10,790 --> 00:21:12,183
‫Jadi mari kita lihat apa yang berikutnya.

365
00:21:13,210 --> 00:21:15,040
‫Oh dan sebenarnya kali ini kami melakukannya dengan benar.

366
00:21:15,040 --> 00:21:18,280
‫Jadi Anda lihat itu adalah sesi yang baru saja kita buat.

367
00:21:18,280 --> 00:21:22,050
‫Dan itu mengedit beberapa hal lain di sini, tetapi itu tidak

368
00:21:22,050 --> 00:21:24,290
‫terlalu penting bagi kami saat ini.

369
00:21:24,290 --> 00:21:27,430
‫Apa yang benar-benar menarik untuk dilihat adalah bahwa

370
00:21:27,430 --> 00:21:29,340
‫kita sekarang sebenarnya sudah

371
00:21:29,340 --> 00:21:32,330
‫dapat melihat pembayaran ini, atau setidaknya permintaan

372
00:21:32,330 --> 00:21:35,330
‫pembayaran ini, katakanlah di dasbor drive kita.

373
00:21:35,330 --> 00:21:37,843
‫Jadi jika kita pergi ke

374
00:21:39,490 --> 00:21:44,490
‫sana dan pergi ke pembayaran dan kemudian ke semua, Anda akan melihat

375
00:21:44,540 --> 00:21:49,010
‫bahwa yang terakhir di sini sebenarnya baru saja terjadi sekarang.

376
00:21:49,010 --> 00:21:51,320
‫Jadi jika kita klik itu, maka Anda akan melihat beberapa data tentangnya.

377
00:21:51,320 --> 00:21:56,320
‫Jadi Anda lihat misalnya bahwa ini sebenarnya tentang

378
00:21:56,630 --> 00:21:59,130
‫Tur Penjelajah Laut.

379
00:21:59,130 --> 00:22:00,960
‫Anda juga memiliki harga, Anda juga memiliki gambar.

380
00:22:00,960 --> 00:22:03,983
‫Mungkin juga beberapa data tentang pengguna.

381
00:22:04,920 --> 00:22:07,800
‫Dan sebenarnya tidak, tidak juga.

382
00:22:07,800 --> 00:22:10,530
‫Tetapi yang penting di sini adalah dikatakan tidak lengkap.

383
00:22:10,530 --> 00:22:14,400
‫Dan itu karena kami hanya membuat

384
00:22:14,400 --> 00:22:17,160
‫sesi checkout di server.

385
00:22:17,160 --> 00:22:18,310
‫Jadi kami melewatkan

386
00:22:18,310 --> 00:22:20,440
‫langkah kedua di mana kami kemudian

387
00:22:20,440 --> 00:22:22,750
‫benar-benar menagih kartu kredit di sisi klien.

388
00:22:22,750 --> 00:22:24,450
‫Jadi karena kita melewatkan itu, mari

389
00:22:24,450 --> 00:22:26,210
‫kita lakukan dengan benar di video berikutnya.

