﻿1
00:00:01,350 --> 00:00:03,520
‫Jonas: Sekarang mari kita implementasikan pengendali

2
00:00:03,520 --> 00:00:07,750
‫rute untuk permintaan posting sehingga kita benar-benar dapat menambahkan Natour ke kumpulan

3
00:00:07,750 --> 00:00:09,023
‫data kita.

4
00:00:10,470 --> 00:00:12,870
‫Jadi seperti halnya handler permintaan doGET(),

5
00:00:12,870 --> 00:00:15,350
‫mari kita mulai dengan menambahkan rute baru.

6
00:00:15,350 --> 00:00:19,220
‫Jadi aplikasi. post kali ini, dan

7
00:00:19,220 --> 00:00:22,120
‫ingat sekarang kita menggunakan post jadi metode

8
00:00:22,120 --> 00:00:26,140
‫post disini, karena itulah jenis request yang ingin kita tangani.

9
00:00:26,140 --> 00:00:30,263
‫Jadi request yang dibuat dengan kata kerja http post kan?

10
00:00:32,483 --> 00:00:33,316
‫V1

11
00:00:34,610 --> 00:00:35,960
‫dan tur.

12
00:00:35,960 --> 00:00:39,690
‫Seperti yang kita bicarakan di kuliah REST

13
00:00:39,690 --> 00:00:42,363
‫API, URL sebenarnya persis sama.

14
00:00:43,390 --> 00:00:46,290
‫Tidak masalah jika kita ingin mendapatkan semua tur,

15
00:00:46,290 --> 00:00:48,800
‫atau jika kita ingin membuat tur

16
00:00:48,800 --> 00:00:50,650
‫baru, URL-nya sama persis.

17
00:00:50,650 --> 00:00:53,780
‫Kemudian satu-satunya hal yang berubah adalah metode http yang

18
00:00:53,780 --> 00:00:56,363
‫kami gunakan untuk melakukan permintaan ini.

19
00:00:57,592 --> 00:01:01,420
‫Untuk mendapatkan semua tur dan pos untuk membuat tur baru,

20
00:01:01,420 --> 00:01:04,337
‫maka di sini, fungsi panggilan balik khas

21
00:01:04,337 --> 00:01:06,906
‫kami di mana kami mendapatkan akses

22
00:01:06,906 --> 00:01:10,810
‫ke permintaan dan ke objek respons sehingga kami bisa mendapatkan

23
00:01:10,810 --> 00:01:14,560
‫beberapa data dari permintaan dan mengirim kembali yang sesuai tanggapan.

24
00:01:14,560 --> 00:01:16,800
‫Sekarang ingat bahwa dengan permintaan

25
00:01:16,800 --> 00:01:20,790
‫posting, kita dapat mengirim data dari klien ke server, bukan?

26
00:01:20,790 --> 00:01:24,543
‫Data ini kemudian idealnya tersedia berdasarkan permintaan.

27
00:01:25,690 --> 00:01:28,970
‫Objek permintaan lagi adalah apa yang menyimpan semua data,

28
00:01:28,970 --> 00:01:32,240
‫semua informasi, tentang permintaan yang telah dilakukan.

29
00:01:32,240 --> 00:01:35,190
‫Jika permintaan itu berisi beberapa data

30
00:01:35,190 --> 00:01:38,840
‫yang dikirim, data itu harus ada di permintaan, bukan?

31
00:01:38,840 --> 00:01:42,890
‫Sekarang di luar kotak, Express tidak menempatkan data tubuh itu

32
00:01:42,890 --> 00:01:46,670
‫pada permintaan, dan agar data itu tersedia, kita harus

33
00:01:46,670 --> 00:01:49,176
‫menggunakan sesuatu yang disebut middleware.

34
00:01:49,176 --> 00:01:52,100
‫Kita akan berbicara dengan sangat rinci tentang middleware

35
00:01:52,100 --> 00:01:54,220
‫dalam beberapa kuliah, tetapi untuk saat

36
00:01:54,220 --> 00:01:56,280
‫ini, agar ini berhasil, kita

37
00:01:56,280 --> 00:01:59,943
‫perlu menyertakan middleware sederhana di sini di bagian atas file.

38
00:02:01,860 --> 00:02:04,000
‫Jadi sebenarnya, di sini.

39
00:02:04,000 --> 00:02:09,370
‫Apa yang perlu kita lakukan, adalah mengatakan app. gunakan kemudian ekspresikan.

40
00:02:12,687 --> 00:02:13,520
‫json Oke, dan hanya itu.

41
00:02:14,490 --> 00:02:16,030
‫Jadi sekali lagi, ini [ekspresikan. json] di sini adalah middleware.

42
00:02:16,030 --> 00:02:20,480
‫Dan middleware pada dasarnya adalah

43
00:02:20,480 --> 00:02:23,510
‫fungsi yang dapat memodifikasi data permintaan yang masuk.

44
00:02:23,510 --> 00:02:25,560
‫Disebut middleware karena berdiri di

45
00:02:25,560 --> 00:02:28,370
‫antara, jadi di tengah permintaan dan respons.

46
00:02:28,370 --> 00:02:31,390
‫Ini hanyalah langkah yang dilalui

47
00:02:31,390 --> 00:02:34,030
‫permintaan saat sedang diproses.

48
00:02:34,030 --> 00:02:35,830
‫Dan langkah yang dilalui permintaan, dalam

49
00:02:35,830 --> 00:02:38,440
‫contoh ini adalah data dari isi ditambahkan ke dalamnya.

50
00:02:38,440 --> 00:02:42,330
‫Jadi itu ditambahkan ke objek permintaan dengan

51
00:02:42,330 --> 00:02:44,410
‫menggunakan middleware ini.

52
00:02:44,410 --> 00:02:45,963
‫Kami menggunakan aplikasi. gunakan untuk menggunakan middleware seperti ini.

53
00:02:47,560 --> 00:02:51,763
‫Dan sekali lagi, kita akan berbicara

54
00:02:52,870 --> 00:02:55,250
‫lebih banyak tentang middleware nanti di bagian ini.

55
00:02:55,250 --> 00:02:57,540
‫Untuk saat ini, ketahuilah bahwa inilah cara kami menggunakan middleware.

56
00:02:57,540 --> 00:03:00,703
‫Semua detailnya akan menyusul kemudian.

57
00:03:01,750 --> 00:03:04,110
‫Jadi untuk saat ini, sebagai permulaan, saya

58
00:03:04,110 --> 00:03:07,307
‫ingin benar-benar menunjukkan kepada Anda data dari badan di konsol, hanya

59
00:03:07,307 --> 00:03:09,830
‫untuk memverifikasi bahwa itu benar-benar berfungsi, jadi req. tubuh.

60
00:03:09,830 --> 00:03:14,830
‫Sekali lagi, body adalah properti

61
00:03:14,920 --> 00:03:17,960
‫yang akan tersedia berdasarkan permintaan, karena kami

62
00:03:17,960 --> 00:03:21,130
‫menggunakan middleware itu beberapa saat yang lalu.

63
00:03:21,130 --> 00:03:22,393
‫Jadi kami ingin log[req. body] ke konsol dan

64
00:03:23,560 --> 00:03:27,090
‫kemudian kita juga perlu mengirim kembali tanggapan.

65
00:03:27,090 --> 00:03:29,600
‫Jadi res. kirim dan untuk saat ini hanya beberapa pemegang tempat di sini.

66
00:03:29,600 --> 00:03:34,083
‫Cukup 'Selesai' oke.

67
00:03:35,870 --> 00:03:37,020
‫Jadi kita

68
00:03:37,020 --> 00:03:39,070
‫selalu perlu mengirim kembali sesuatu untuk

69
00:03:39,070 --> 00:03:42,600
‫menyelesaikan apa yang disebut siklus permintaan/tanggapan, yang lagi-lagi akan kita

70
00:03:42,600 --> 00:03:44,980
‫pelajari lebih lanjut nanti di bagian ini.

71
00:03:44,980 --> 00:03:46,530
‫Jadi sekarang mari kita

72
00:03:46,530 --> 00:03:49,363
‫uji ini, dan buat permintaan baru untuk postingan.

73
00:03:49,363 --> 00:03:51,200
‫Sekarang di sini di tukang pos, kita

74
00:03:51,200 --> 00:03:53,680
‫bisa melakukan sesuatu yang sangat bagus yaitu menyimpan semua permintaan ini.

75
00:03:53,680 --> 00:03:56,133
‫Saya akan mulai dengan membuat

76
00:03:58,180 --> 00:04:01,200
‫koleksi baru, yang akan saya sebut Natours.

77
00:04:01,200 --> 00:04:02,500
‫Koleksi baru.

78
00:04:06,570 --> 00:04:07,600
‫Sekarang saya akan menyimpan permintaan ini di dalam koleksi itu.

79
00:04:07,600 --> 00:04:10,793
‫Jadi yang ini adalah Dapatkan semua Tur.

80
00:04:12,650 --> 00:04:14,573
‫Masukkan ke Natours, dan simpan.

81
00:04:17,380 --> 00:04:20,290
‫Jadi sekarang kami memiliki permintaan Dapatkan kami di sini.

82
00:04:20,290 --> 00:04:23,563
‫Nah sekarang mari kita salin yang ini di sini,

83
00:04:26,070 --> 00:04:27,410
‫buat yang baru.

84
00:04:27,410 --> 00:04:28,583
‫Jadi yang ini adalah permintaan posting.

85
00:04:30,120 --> 00:04:31,970
‫Sebelum melakukannya, sebenarnya

86
00:04:31,970 --> 00:04:35,330
‫saya juga akan menyimpannya langsung ke koleksi ini.

87
00:04:35,330 --> 00:04:36,853
‫Jadi Buat Tur Baru.

88
00:04:38,080 --> 00:04:41,083
‫Di sini, di sisi kiri, kami sekarang memiliki kedua permintaan kami.

89
00:04:43,443 --> 00:04:47,733
‫Sekarang mari kita tentukan tubuh kita di sini, jadi data

90
00:04:49,070 --> 00:04:52,620
‫yang pada dasarnya ingin kita kirim ke server.

91
00:04:52,620 --> 00:04:56,550
‫Kami datang ke sini ke Body, dan ada berbagai cara

92
00:04:56,550 --> 00:04:59,370
‫untuk melakukannya sekarang, tetapi yang paling

93
00:04:59,370 --> 00:05:02,250
‫mudah adalah dengan mengatakan, Raw, lalu Application JSON.

94
00:05:02,250 --> 00:05:06,260
‫Yang harus kita lakukan di sini pada dasarnya adalah menentukan beberapa

95
00:05:06,260 --> 00:05:09,470
‫JSON, dan itu kemudian akan dikirim ke server.

96
00:05:09,470 --> 00:05:12,180
‫Jadi hal pertama yang ingin kami tentukan

97
00:05:12,180 --> 00:05:13,760
‫adalah nama Tur, dan

98
00:05:13,760 --> 00:05:17,150
‫Anda ingat bahwa di JSON, semuanya harus dalam tanda

99
00:05:17,150 --> 00:05:20,550
‫kutip dan benar-benar tanda kutip ganda, bukan sembarang tanda kutip.

100
00:05:20,550 --> 00:05:21,873
‫Biarkan saya menyebutnya Tur

101
00:05:22,810 --> 00:05:26,040
‫Uji, dan mari kita lihat apa lagi yang kita miliki dalam data tur.

102
00:05:26,040 --> 00:05:29,343
‫Jadi kita punya nama, kita punya durasi, dan

103
00:05:30,550 --> 00:05:32,850
‫kita sebut saja tingkat kesulitannya.

104
00:05:32,850 --> 00:05:35,033
‫Jadi saya tidak akan merinci semua ini karena

105
00:05:37,260 --> 00:05:38,720
‫itu memakan terlalu banyak waktu.

106
00:05:38,720 --> 00:05:40,893
‫Anggap saja

107
00:05:42,500 --> 00:05:46,890
‫durasinya 10 hari, dan kesulitannya mudah.

108
00:05:50,250 --> 00:05:51,483
‫Bahwa sebagai tubuh kita akan dikirimkan ke server.

109
00:05:52,800 --> 00:05:57,290
‫Jadi itu diuji sekarang, tekan kirim dan di sini kami

110
00:05:57,290 --> 00:06:00,550
‫mendapatkan kembali respons kami, yang selesai, ingat.

111
00:06:00,550 --> 00:06:03,500
‫Berikut adalah tanggapan yang kami kirimkan, jadi selesai.

112
00:06:07,104 --> 00:06:09,520
‫Dan Anda lihat di sini di konsol

113
00:06:09,520 --> 00:06:11,700
‫kami, kami sekarang memiliki objek yang

114
00:06:11,700 --> 00:06:15,153
‫pada dasarnya adalah JSON yang kami kirimkan ke tubuh kami, bukan?

115
00:06:15,153 --> 00:06:17,750
‫Sangat sempurna, itu berhasil!

116
00:06:17,750 --> 00:06:19,600
‫Ini bukan lagi JSON, seperti yang Anda lihat.

117
00:06:19,600 --> 00:06:21,170
‫Ini benar-benar objek JavaScript.

118
00:06:21,170 --> 00:06:23,860
‫Hanya untuk menunjukkan kepada Anda bahwa kami

119
00:06:23,860 --> 00:06:27,000
‫benar-benar membutuhkan middleware, mari beri komentar yang satu ini.

120
00:06:27,000 --> 00:06:28,350
‫Kirim lagi.

121
00:06:30,190 --> 00:06:31,688
‫Sekarang tidak lagi memiliki permintaan. tubuh, kan?

122
00:06:31,688 --> 00:06:36,160
‫Itu sebabnya sekarang tidak terdefinisi, karena tidak ada lagi.

123
00:06:36,160 --> 00:06:39,093
‫Simpan, kirim permintaan kami

124
00:06:40,440 --> 00:06:44,030
‫lagi, dan sekarang sudah kembali.

125
00:06:44,030 --> 00:06:45,403
‫Kami telah menyiapkan rute

126
00:06:48,220 --> 00:06:51,510
‫pos kami, itu berfungsi sekarang dan kami juga mendapatkan akses ke isi,

127
00:06:51,510 --> 00:06:53,810
‫jadi yang ingin kami lakukan sekarang adalah benar-benar

128
00:06:53,810 --> 00:06:56,830
‫menyimpan data itu ke dalam file JSON tur sederhana ini.

129
00:06:56,830 --> 00:07:00,680
‫Kami sebenarnya akan memodifikasi file ini, sehingga data

130
00:07:00,680 --> 00:07:04,090
‫disimpan ke database fiksi kami di sini.

131
00:07:04,090 --> 00:07:07,500
‫File JSON ini sekarang berfungsi sebagai

132
00:07:07,500 --> 00:07:09,820
‫database fiksi kami.

133
00:07:09,820 --> 00:07:11,623
‫Jadi sekarang mari kita urus itu.

134
00:07:12,850 --> 00:07:15,810
‫Aku akan pergi ke depan dan komentar yang satu ini.

135
00:07:15,810 --> 00:07:18,063
‫Jadi mari kita mulai.

136
00:07:19,250 --> 00:07:20,650
‫Hal pertama yang perlu

137
00:07:20,650 --> 00:07:23,440
‫kita lakukan adalah mencari tahu id dari objek baru.

138
00:07:23,440 --> 00:07:25,240
‫Ingat, sekali lagi dalam

139
00:07:25,240 --> 00:07:28,720
‫kuliah tentang REST API, adalah ketika kita membuat objek baru, kita

140
00:07:28,720 --> 00:07:30,570
‫tidak pernah menentukan id objek tersebut.

141
00:07:30,570 --> 00:07:33,200
‫Database biasanya menangani itu.

142
00:07:33,200 --> 00:07:35,623
‫Objek baru biasanya secara otomatis mendapatkan id barunya.

143
00:07:36,980 --> 00:07:40,470
‫Nah dalam kasus ini, kita tidak memiliki database apapun, jadi yang

144
00:07:40,470 --> 00:07:42,840
‫akan kita lakukan adalah mengambil id

145
00:07:42,840 --> 00:07:46,020
‫dari objek terakhir dan kemudian menambahkan +1 ke sana.

146
00:07:46,020 --> 00:07:48,833
‫Mari kita lakukan dengan sangat cepat, dan itu hanya

147
00:07:50,020 --> 00:07:51,010
‫JavaScript dasar.

148
00:07:51,010 --> 00:07:53,440
‫Jadi baru itu tur, kan?

149
00:07:53,440 --> 00:07:57,740
‫Ingat bahwa wisata, kami sudah memiliki data

150
00:07:57,740 --> 00:08:01,160
‫dalam variabel wisata ini.

151
00:08:01,160 --> 00:08:02,673
‫Jadi itu adalah array

152
00:08:03,800 --> 00:08:06,500
‫dari semua objek wisata, dan jadi kami ingin

153
00:08:06,500 --> 00:08:08,313
‫mendapatkan yang terakhir, yaitu wisata. panjang - 1, maka properti

154
00:08:09,150 --> 00:08:13,410
‫id itu dan kami menambahkan +1.

155
00:08:13,410 --> 00:08:17,220
‫Jadi itu adalah id baru.

156
00:08:17,220 --> 00:08:18,823
‫Selanjutnya, kami membuat tur baru,

157
00:08:21,533 --> 00:08:23,033
‫dan tur itu pada

158
00:08:23,950 --> 00:08:28,070
‫dasarnya adalah badan yang kami kirim ditambah id baru yang baru saja kami buat.

159
00:08:28,070 --> 00:08:30,863
‫Jadi kita bisa menggunakan objek. assign, yang pada dasarnya memungkinkan kita

160
00:08:31,950 --> 00:08:36,730
‫untuk membuat objek baru dengan

161
00:08:36,730 --> 00:08:40,070
‫menggabungkan dua objek yang sudah ada menjadi satu.

162
00:08:40,070 --> 00:08:41,130
‫Jadi objek

163
00:08:41,130 --> 00:08:43,300
‫pertama adalah id=newId, dan

164
00:08:43,300 --> 00:08:44,920
‫kemudian kita ingin

165
00:08:48,270 --> 00:08:49,200
‫request. tubuh.

166
00:08:51,140 --> 00:08:52,353
‫Kami juga bisa melakukan req. tubuh. id=newId, tetapi

167
00:08:54,330 --> 00:08:58,730
‫saya tidak ingin mengubah objek tubuh asli.

168
00:09:00,250 --> 00:09:03,503
‫Aku hanya meninggalkannya seperti ini.

169
00:09:04,740 --> 00:09:06,323
‫Itu adalah tur baru, dan sekarang

170
00:09:08,564 --> 00:09:11,720
‫yang ingin kami lakukan adalah mendorong tur ini ke dalam rangkaian tur, bukan?

171
00:09:11,720 --> 00:09:16,120
‫Jadi wisata, adalah rangkaian dari sembilan wisata yang

172
00:09:16,120 --> 00:09:19,130
‫kami miliki saat ini.

173
00:09:19,130 --> 00:09:20,330
‫Kami mengatakan dorong dan dorong tur baru di sana.

174
00:09:20,330 --> 00:09:25,163
‫Itu adalah array yang sekarang memiliki tur baru di dalamnya, tetapi tentu

175
00:09:27,880 --> 00:09:31,500
‫saja sekarang kita harus mempertahankannya ke dalam file.

176
00:09:31,500 --> 00:09:35,110
‫Itu sekali lagi cukup mudah bagi Anda

177
00:09:35,110 --> 00:09:37,855
‫saat ini, jadi gunakan fs. menulis berkas.

178
00:09:37,855 --> 00:09:41,840
‫Jadi mana yang harus kita gunakan?

179
00:09:41,840 --> 00:09:43,390
‫writeFile atau writeFileSync?

180
00:09:43,390 --> 00:09:46,540
‫Jawaban untuk itu sangat sederhana.

181
00:09:47,570 --> 00:09:50,070
‫Kami berada di dalam fungsi panggilan balik, yang

182
00:09:50,070 --> 00:09:52,010
‫akan berjalan di loop acara.

183
00:09:52,010 --> 00:09:54,430
‫Kami tidak akan pernah bisa memblokir loop acara.

184
00:09:54,430 --> 00:09:57,180
‫Apa yang akan kita lakukan adalah

185
00:09:57,180 --> 00:10:00,030
‫menggunakan writeFile dan tidak menyinkronkan yang ini.

186
00:10:00,030 --> 00:10:01,720
‫Kami ingin meneruskan fungsi panggilan

187
00:10:01,720 --> 00:10:03,820
‫balik yang akan diproses di latar belakang

188
00:10:03,820 --> 00:10:05,800
‫dan segera setelah siap, itu akan

189
00:10:05,800 --> 00:10:07,160
‫menempatkan acaranya di

190
00:10:07,160 --> 00:10:10,810
‫salah satu antrian loop acara, yang kemudian akan ditangani segera setelah loop

191
00:10:10,810 --> 00:10:12,180
‫acara melewati fase itu.

192
00:10:12,180 --> 00:10:14,760
‫Ingat itu dari kuliah Event Loop?

193
00:10:14,760 --> 00:10:17,360
‫Bagaimanapun, mari kita ambil nama file dari

194
00:10:17,360 --> 00:10:21,080
‫atas sini, karena kami akan benar-benar menimpa file ini sehingga

195
00:10:21,080 --> 00:10:23,650
‫ketika kami me-restart server ini, itu akan

196
00:10:23,650 --> 00:10:25,270
‫ada di sana.

197
00:10:25,270 --> 00:10:26,823
‫Jadi di

198
00:10:28,040 --> 00:10:30,101
‫mana- di sini.

199
00:10:30,101 --> 00:10:31,018
‫Jadi itu adalah file tempat kita ingin menulis.

200
00:10:31,937 --> 00:10:35,246
‫Data yang ingin kita tulis, yaitu tour, dan

201
00:10:35,246 --> 00:10:37,733
‫kemudian fungsi call-back kita, yang dalam

202
00:10:39,040 --> 00:10:40,760
‫hal ini hanya error.

203
00:10:40,760 --> 00:10:43,203
‫Di sini saya baru menyadari

204
00:10:46,040 --> 00:10:49,890
‫bahwa kita juga perlu merangkai objek ini, bukan?

205
00:10:49,890 --> 00:10:51,580
‫Kami ingin json dalam

206
00:10:51,580 --> 00:10:53,680
‫file JSON ini, dan ini sekarang

207
00:10:53,680 --> 00:10:57,020
‫hanyalah objek JavaScript biasa dan normal sehingga kami perlu mengonversinya.

208
00:10:57,020 --> 00:10:58,580
‫Tapi itu lagi sederhana, sudah melakukan itu.

209
00:10:58,580 --> 00:11:02,320
‫JSON. merangkai objek.

210
00:11:05,510 --> 00:11:06,343
‫Apa yang ingin kita lakukan segera setelah file ditulis?

211
00:11:07,930 --> 00:11:11,760
‫Nah, yang biasanya kita lakukan adalah mengirimkan objek yang baru

212
00:11:11,760 --> 00:11:13,340
‫dibuat sebagai respon.

213
00:11:13,340 --> 00:11:16,683
‫Mari kita lakukan itu.

214
00:11:17,670 --> 00:11:18,600
‫Jadi respon,

215
00:11:18,600 --> 00:11:21,650
‫dan kemudian seperti biasa, kita mulai dengan menentukan kode status.

216
00:11:21,650 --> 00:11:23,340
‫Dalam hal ini, itu tidak akan menjadi 200, tetapi 201.

217
00:11:23,340 --> 00:11:26,483
‫Jadi 201 yang artinya diciptakan.

218
00:11:27,400 --> 00:11:30,190
‫200 singkatan oke, 201

219
00:11:30,190 --> 00:11:34,090
‫singkatan dibuat, itulah yang terjadi di sini.

220
00:11:34,090 --> 00:11:36,260
‫Kami membuat sumber daya baru di server.

221
00:11:36,260 --> 00:11:38,513
‫Jadi JSON, dan itu terus menambahkan pesan ini di sini.

222
00:11:41,260 --> 00:11:45,873
‫Statusnya lagi, sukses.

223
00:11:48,240 --> 00:11:50,993
‫Saya tidak menggunakan properti hasil di sini,

224
00:11:52,500 --> 00:11:56,770
‫yang kita miliki sebelumnya, karena sekarang saya hanya mengirimkan kembali satu hasil.

225
00:11:56,770 --> 00:11:59,263
‫Data adalah amplop kami di sini.

226
00:12:00,651 --> 00:12:02,203
‫Tur adalah tur baru.

227
00:12:04,100 --> 00:12:09,100
‫Itu dia!

228
00:12:09,230 --> 00:12:10,063
‫Simpan di

229
00:12:10,063 --> 00:12:12,660
‫sini, dan format itu, atau kodekan sedikit.

230
00:12:12,660 --> 00:12:14,260
‫Mari tambahkan lebih banyak ruang di sini.

231
00:12:14,260 --> 00:12:15,933
‫Saya pikir kami siap untuk mencobanya sekarang.

232
00:12:18,480 --> 00:12:20,533
‫Kami sebenarnya dapat membuat tur baru, menggunakan data ini di sini.

233
00:12:23,180 --> 00:12:26,273
‫Jadi sesuaikan Test Tour ini, dan dengan data ini,

234
00:12:28,600 --> 00:12:30,440
‫dan mari kita tunggu.

235
00:12:30,440 --> 00:12:32,540
‫Apa yang terjadi disini?

236
00:12:33,670 --> 00:12:34,620
‫Mari kita lihat, ah oke.

237
00:12:35,780 --> 00:12:37,000
‫Kami memiliki masalah yang kami mengirim tanggapan dua kali pada dasarnya.

238
00:12:37,000 --> 00:12:40,733
‫Jadi kami mengirim tanggapan dengan JSON, dan

239
00:12:40,733 --> 00:12:43,320
‫sekali lagi dengan . mengirim.

240
00:12:43,320 --> 00:12:45,530
‫Itu tidak diperbolehkan.

241
00:12:45,530 --> 00:12:46,620
‫Itu sebenarnya mengapa kami mendapatkan kesalahan ini di sini.

242
00:12:46,620 --> 00:12:48,990
‫Jadi sebenarnya bagus bahwa itu terjadi di sini, sehingga Anda tahu

243
00:12:48,990 --> 00:12:50,622
‫apa artinya kesalahan standar di sini.

244
00:12:50,622 --> 00:12:54,871
‫HTTP_HEADERS_SENT tidak dapat menyetel tajuk

245
00:12:54,871 --> 00:12:58,330
‫setelah dikirim ke klien.

246
00:12:58,330 --> 00:12:59,163
‫Itu terjadi ketika Anda mencoba mengirim dua tanggapan.

247
00:12:59,163 --> 00:13:02,483
‫Kita perlu menyingkirkan itu.

248
00:13:04,642 --> 00:13:06,540
‫Ya, itu satu-satunya kesalahan yang kami miliki.

249
00:13:10,030 --> 00:13:12,163
‫Itu sekarang harus memperbaikinya.

250
00:13:14,350 --> 00:13:16,390
‫Cobalah.

251
00:13:16,390 --> 00:13:17,313
‫Dan memang, ini dia.

252
00:13:19,410 --> 00:13:21,190
‫Jadi kami memiliki id

253
00:13:21,190 --> 00:13:24,941
‫kami 10, yang kode kami buat untuk kami, dan kemudian seluruh

254
00:13:24,941 --> 00:13:28,930
‫tur yang persis data yang kami kirim sebagai badan dalam permintaan kami.

255
00:13:28,930 --> 00:13:32,353
‫Sekarang masalahnya, ketika kami mendapatkan semua tur

256
00:13:33,850 --> 00:13:36,900
‫di sini, itu belum akan muncul.

257
00:13:36,900 --> 00:13:38,363
‫Jika kita turun ke sini, sebenarnya

258
00:13:39,480 --> 00:13:40,933
‫sudah ada di sini.

259
00:13:42,520 --> 00:13:44,770
‫Kami memiliki yang dari sebelumnya, jadi ketika kami mengalami kesalahan

260
00:13:44,770 --> 00:13:46,984
‫itu, itu sebenarnya juga membuat tur ini di sini.

261
00:13:46,984 --> 00:13:50,830
‫Kemudian tentunya tour yang kita buat dengan id 10.

262
00:13:50,830 --> 00:13:54,000
‫Jadi tur ini persis seperti yang

263
00:13:54,000 --> 00:13:56,180
‫dibuat saat ini.

264
00:13:56,180 --> 00:13:57,530
‫Jika kita lakukan sekarang, Test Tour 2, dengan durasi hanya 5.

265
00:13:58,370 --> 00:14:03,370
‫Mari kita coba yang ini, dan jika saya mendapatkan semua tur, maka itu akan

266
00:14:03,890 --> 00:14:05,580
‫muncul di sini juga.

267
00:14:05,580 --> 00:14:10,550
‫Saya katakan di awal tidak akan berfungsi, sehingga tidak langsung muncul,

268
00:14:10,550 --> 00:14:12,246
‫karena ini hanya

269
00:14:12,246 --> 00:14:14,760
‫berfungsi jika kita me-restart server.

270
00:14:14,760 --> 00:14:19,913
‫File ini, tour-simple.

271
00:14:21,480 --> 00:14:23,610
‫File json tempat tur kami

272
00:14:23,610 --> 00:14:25,140
‫berasal, hanya dibaca di awal saat kami memulai server.

273
00:14:25,140 --> 00:14:28,819
‫Sekarang masalahnya adalah setiap kali kita menyimpan sesuatu ke file JSON

274
00:14:28,819 --> 00:14:31,420
‫ini, itu juga akan memuat ulang server.

275
00:14:31,420 --> 00:14:35,180
‫Biarkan saya membuktikannya kepada Anda, jadi jika saya menekan save

276
00:14:35,180 --> 00:14:38,160
‫sekarang, lihat apa yang terjadi di sini.

277
00:14:38,160 --> 00:14:40,800
‫Jadi saya menyimpannya, dan Anda melihat bahwa

278
00:14:40,800 --> 00:14:43,180
‫di sini server memulai ulang.

279
00:14:43,180 --> 00:14:44,980
‫Itu juga memformat kode, karena lebih cantik.

280
00:14:44,980 --> 00:14:47,920
‫Tetapi yang penting di sini, apakah kode ini diperbarui.

281
00:14:47,920 --> 00:14:50,970
‫Itu sebabnya setiap kali kami menyimpan sesuatu di

282
00:14:50,970 --> 00:14:52,780
‫sini dengan API kami,

283
00:14:52,780 --> 00:14:56,160
‫itu akan segera memuat ulang server dan akan memuat ulang

284
00:14:56,160 --> 00:15:00,230
‫konten dari file ke dalam tur, dan kami kemudian dapat langsung membacanya.

285
00:15:00,230 --> 00:15:02,080
‫Itu sebabnya kami memiliki

286
00:15:03,020 --> 00:15:06,400
‫akses langsung ke semua tur yang baru dibuat.

287
00:15:06,400 --> 00:15:08,563
‫Masuk akal?

288
00:15:09,660 --> 00:15:10,550
‫Nah jika

289
00:15:10,550 --> 00:15:13,970
‫belum, silahkan langsung saja ajukan pertanyaan Anda, dan tentunya bagian Q&A kan?

