1
00:00:03,920 --> 00:00:07,800
Bây giờ, chúng ta đã tìm hiểu về Express Generator,

2
00:00:07,800 --> 00:00:10,890
công cụ giàn giáo cho các ứng dụng chuyên gia,

3
00:00:10,890 --> 00:00:17,405
hãy cài đặt Express Generator và sau đó tạo ra một ứng dụng Express mới.

4
00:00:17,405 --> 00:00:20,250
Chúng tôi sẽ tạo bản sao chính xác của

5
00:00:20,250 --> 00:00:25,850
ứng dụng Express REST API mà chúng tôi đã thực hiện trong mô-đun trước đó.

6
00:00:25,850 --> 00:00:30,025
Chúng tôi sẽ thực sự tái sử dụng ba router,

7
00:00:30,025 --> 00:00:34,970
Express router mà chúng tôi thực hiện trong ứng dụng Express trước đó trong ứng dụng

8
00:00:34,970 --> 00:00:38,690
mới được tạo ra mà chúng tôi sẽ

9
00:00:38,690 --> 00:00:43,430
tạo ra bằng cách sử dụng Express Generator trong bài tập này.

10
00:00:43,430 --> 00:00:48,680
Để bắt đầu, bước đầu tiên của bạn là cài đặt Express Generator.

11
00:00:48,680 --> 00:00:52,610
Vì vậy, tại dấu nhắc gõ “npm

12
00:00:52,610 --> 00:00:59,210
install -g” để cài đặt nó như là một mô-đun NPM toàn cầu.

13
00:00:59,210 --> 00:01:05,120
Chúng tôi sẽ nói Express Generator và nhấn Return.

14
00:01:05,120 --> 00:01:10,910
Bây giờ, nếu bạn đang cài đặt trên một OSX hoặc một máy Linux,

15
00:01:10,910 --> 00:01:14,400
hãy chắc chắn sử dụng sudo ở phía trước của lệnh này.

16
00:01:14,400 --> 00:01:21,500
Sau đó cài đặt ứng dụng như một ứng dụng toàn cầu.

17
00:01:21,500 --> 00:01:29,850
Như bạn có thể thấy, phiên bản Express Generator mà tôi đang sử dụng là 4.16.0 trong khóa học này.

18
00:01:29,850 --> 00:01:33,845
Bây giờ, chúng tôi đã cài đặt Express Generator, trong thiết bị đầu cuối của bạn,

19
00:01:33,845 --> 00:01:37,590
di chuyển đến thư mục Node.Js nơi bạn đã lưu trữ

20
00:01:37,590 --> 00:01:42,080
tất cả các ứng dụng nút khác nhau mà chúng tôi đã phát triển trong khóa học này,

21
00:01:42,080 --> 00:01:43,745
trong thư mục Node.Js.

22
00:01:43,745 --> 00:01:50,020
Tại dấu nhắc loại thể hiện ConfusionServer.

23
00:01:50,020 --> 00:01:53,865
Bây giờ, nếu bạn đã theo dõi từ các khóa học trước đó,

24
00:01:53,865 --> 00:01:57,410
bạn hiểu lý do tại sao tôi gọi nó là nhầm lẫn và vì vậy

25
00:01:57,410 --> 00:02:01,860
hãy giàn giáo ra ứng dụng thể hiện của chúng tôi trong ConfusionServer.

26
00:02:01,860 --> 00:02:07,165
Tôi đang giàn giáo ra mà không có bất kỳ lựa chọn mới và sau đó trong một thời gian ngắn,

27
00:02:07,165 --> 00:02:10,125
máy chủ Express sẽ được giàn giáo ra.

28
00:02:10,125 --> 00:02:14,390
Bây giờ, di chuyển vào thư mục ConfusionServer và sau đó

29
00:02:14,390 --> 00:02:18,680
bạn sẽ thấy rằng một loạt các tập tin đã được giàn giáo ra cho bạn.

30
00:02:18,680 --> 00:02:23,645
Vì vậy, chúng ta hãy mở dự án này trong Visual Studio Code.

31
00:02:23,645 --> 00:02:28,935
Ngoài ra, tại dấu nhắc gõ “npm

32
00:02:28,935 --> 00:02:33,110
install” để cài đặt tất cả các mô-đun NPM

33
00:02:33,110 --> 00:02:36,070
đã được bao gồm trong tập tin package.json.

34
00:02:36,070 --> 00:02:39,590
Vì vậy, chúng ta hãy xem xét nhanh các tập tin package.json để xem

35
00:02:39,590 --> 00:02:44,360
tất cả các mô-đun NPM Node khác nhau sẽ được cài đặt là gì.

36
00:02:44,360 --> 00:02:46,200
Đi đến ứng dụng của chúng tôi,

37
00:02:46,200 --> 00:02:48,175
trong tập tin package.json,

38
00:02:48,175 --> 00:02:52,550
bạn thấy rằng máy chủ với tên mặc định

39
00:02:52,550 --> 00:02:57,200
đã được giàn giáo ra và bạn thấy một loạt các phụ thuộc được khai báo ở đây.

40
00:02:57,200 --> 00:03:02,390
Vì vậy, tất cả các mô-đun NPM này sẽ được tự động cài đặt cho

41
00:03:02,390 --> 00:03:08,970
bạn bởi NPM khi bạn gõ “npm install” trong thư mục này.

42
00:03:08,970 --> 00:03:13,370
Vì vậy, bạn sẽ thấy thư mục mô-đun Node đang được tạo ra ở đây.

43
00:03:13,370 --> 00:03:17,600
Đi vào thiết bị đầu cuối, gõ “npm install” và sau đó để cho nó

44
00:03:17,600 --> 00:03:22,320
tiến hành cài đặt tất cả các mô-đun NPM khác nhau.

45
00:03:22,320 --> 00:03:23,985
Một khi tất cả chúng được hoàn thành,

46
00:03:23,985 --> 00:03:29,810
sau đó chúng tôi đã sẵn sàng để bắt đầu với ứng dụng Express của chúng tôi.

47
00:03:29,810 --> 00:03:34,595
Bạn sẽ nhận thấy rằng các ứng dụng Express mặc định đã được cài đặt chuyên biệt.

48
00:03:34,595 --> 00:03:35,710
Vì vậy, tại dấu nhắc,

49
00:03:35,710 --> 00:03:38,105
nếu bạn chỉ đơn giản là nói npm start,

50
00:03:38,105 --> 00:03:42,295
ứng dụng mặc định sẽ khởi động và bạn có thể

51
00:03:42,295 --> 00:03:48,500
duyệt bằng cách sử dụng trình duyệt chuẩn của bạn để xem ứng dụng này phục vụ lên.

52
00:03:48,500 --> 00:03:58,645
Đi vào Postman tại địa chỉ khối loại localhost:3000 và

53
00:03:58,645 --> 00:04:03,185
gửi yêu cầu và bạn sẽ thấy rằng máy chủ của bạn sẽ trả lại

54
00:04:03,185 --> 00:04:12,045
thông tin mặc định này từ trang web máy chủ.

55
00:04:12,045 --> 00:04:20,075
Vì vậy, đây là máy chủ Express tiêu chuẩn được giàn giáo ra bởi Express Generator.

56
00:04:20,075 --> 00:04:23,550
Trên bảng điều khiển, bạn sẽ thấy thông tin như thế này được in ở đây.

57
00:04:23,550 --> 00:04:30,180
Đây là những gì Morgan in ra trên màn hình để hiển thị các yêu cầu đến.

58
00:04:30,180 --> 00:04:34,955
Vì vậy, nó cho thấy loại yêu cầu mà URL

59
00:04:34,955 --> 00:04:40,820
và phản hồi tương ứng đã được gửi lại cho khách hàng từ máy chủ.

60
00:04:40,820 --> 00:04:45,050
Hãy dừng máy chủ Express.

61
00:04:45,050 --> 00:04:49,430
Hãy khởi tạo một kho lưu trữ Git và sau đó

62
00:04:49,430 --> 00:04:57,360
chúng tôi sẽ kiểm tra trạng thái Git và bạn sẽ thấy rằng các mô-đun nút đang được bao gồm.

63
00:04:57,360 --> 00:05:03,800
Vì vậy, hãy để tôi chuyển qua ứng dụng của tôi và sau đó tạo ra

64
00:05:03,800 --> 00:05:10,895
một tập tin gitignore và sau đó trong tập tin gitignore,

65
00:05:10,895 --> 00:05:17,470
cho phép tôi chỉ định các mô-đun nút như một tập tin mà tôi muốn bỏ qua.

66
00:05:17,470 --> 00:05:20,815
Sau đó quay trở lại thiết bị đầu cuối,

67
00:05:20,815 --> 00:05:25,090
hãy để tôi kiểm tra trạng thái git và bạn thấy rằng bây giờ

68
00:05:25,090 --> 00:05:30,385
chúng ta sẽ được kiểm tra chỉ trong những tập tin đó là một phần của ứng dụng của chúng tôi.

69
00:05:30,385 --> 00:05:33,925
Vì vậy, tại dấu nhắc, gõ git add,

70
00:05:33,925 --> 00:05:42,085
và sau đó nói, trạng thái git và bạn thấy tất cả các tập tin đã được kiểm tra trong.

71
00:05:42,085 --> 00:05:50,725
Vì vậy, bạn nói, git cam kết -m “Express Generator”.

72
00:05:50,725 --> 00:05:54,500
Bây giờ, chúng tôi sẽ tiếp tục với ứng dụng Express này.

73
00:05:54,500 --> 00:05:58,820
Chúng tôi đã xây dựng ba bộ định tuyến bằng cách sử dụng

74
00:05:58,820 --> 00:06:04,505
bộ định tuyến Express trong ứng dụng Express trước đó mà chúng tôi thực hiện.

75
00:06:04,505 --> 00:06:09,965
Chúng tôi sẽ sao chép qua ba bộ định tuyến để ứng dụng này mà chúng tôi tạo ra bằng cách sử dụng

76
00:06:09,965 --> 00:06:16,240
Express Generator và cũng thiết lập ứng dụng này để sử dụng những ba bộ định tuyến.

77
00:06:16,240 --> 00:06:17,980
Vì vậy, để làm điều đó,

78
00:06:17,980 --> 00:06:24,120
hãy để tôi đi đến thư mục Node.Js và sau đó,

79
00:06:24,120 --> 00:06:27,670
đi vào thư mục nút thể hiện và các tuyến đường,

80
00:06:27,670 --> 00:06:30,380
tôi sẽ sao chép dishRouter.js,

81
00:06:30,380 --> 00:06:34,460
leaderRouter.js router.js và promoRouter.js mà tôi đã thực hiện

82
00:06:34,460 --> 00:06:39,410
trong nhiệm vụ và chúng tôi sẽ đi qua để

83
00:06:39,410 --> 00:06:45,170
ConfusionServer rằng tôi vừa tạo ra và vào thư mục tuyến đường và sau đó sao chép

84
00:06:45,170 --> 00:06:51,720
qua ba bộ định tuyến Express mà chúng tôi đã tạo ra ở đó.

85
00:06:51,720 --> 00:06:58,140
Vì vậy, tự động, bây giờ sửa đổi các tập tin app.js,

86
00:06:58,140 --> 00:07:01,250
chúng tôi sẽ có thể hỗ trợ REST API bằng cách sử dụng

87
00:07:01,250 --> 00:07:05,080
các ứng dụng Express mà chúng tôi đã chỉ giàn giáo ra.

88
00:07:05,080 --> 00:07:09,535
Trả tiền một lần nhanh chóng đến các ứng dụng đã được giàn giáo ra.

89
00:07:09,535 --> 00:07:12,515
Như tôi đã đề cập trong bài giảng trước,

90
00:07:12,515 --> 00:07:16,780
app.js là nơi mà tất cả bắt đầu.

91
00:07:16,780 --> 00:07:20,540
Vì vậy, đây là tệp tiêu chuẩn để bạn có thể thấy một số

92
00:07:20,540 --> 00:07:25,360
điều mà bạn đã quen thuộc với từ mô-đun trước đó.

93
00:07:25,360 --> 00:07:31,440
Vì vậy, chúng tôi đang yêu cầu express path logger đó là morgan trong trường hợp này.

94
00:07:31,440 --> 00:07:35,570
CookieParser mà chúng tôi sẽ sử dụng trong một trong những bài tập sau này và bạn

95
00:07:35,570 --> 00:07:40,170
cũng thấy rằng bạn đang nhập hai tuyến đường;

96
00:07:40,170 --> 00:07:42,220
chỉ số và người sử dụng,

97
00:07:42,220 --> 00:07:45,225
mà đã được giàn giáo ra bởi Express cho chúng tôi.

98
00:07:45,225 --> 00:07:51,300
Vì vậy, chúng tôi sẽ thêm vào ba bộ định tuyến mới ở đây.

99
00:07:51,300 --> 00:08:00,734
Vì vậy, tôi sẽ chỉ nói, var DishRouter yêu cầu các tuyến đường D

100
00:08:00,734 --> 00:08:10,480
ishRouter và sau đó họ sẽ sao chép này và sau đó cũng nhập khẩu

101
00:08:10,480 --> 00:08:24,470
Promorouter và LeaderRouter

102
00:08:26,670 --> 00:08:32,315
và chúng tôi sẽ thiết lập những để được sử dụng ở đây.

103
00:08:32,315 --> 00:08:35,735
Ở đây bạn thấy rằng chỉ số được gắn

104
00:08:35,735 --> 00:08:40,070
kết tại dấu gạch chéo và sau đó người dùng được gắn kết tại /users.

105
00:08:40,070 --> 00:08:43,160
Vì vậy, chúng ta sẽ nói, sử dụng ứng dụng

106
00:08:43,160 --> 00:08:52,970
và các món ăn DishRouter.

107
00:08:52,970 --> 00:08:54,840
Bây giờ là 4 giờ.

108
00:08:59,890 --> 00:09:17,910
Khuyến mãi Promorouter và các nhà lãnh đạo.

109
00:09:18,030 --> 00:09:22,735
LeaderRouter. Đó là nó.

110
00:09:22,735 --> 00:09:27,045
Ứng dụng Express của chúng tôi đã được giàn giáo ra bây giờ tất cả được thiết lập

111
00:09:27,045 --> 00:09:32,000
để trở thành một máy chủ API REST đầy đủ, sẽ phục vụ cho các món ăn,

112
00:09:32,000 --> 00:09:34,595
món ăn, chương trình khuyến mãi và các nhà lãnh đạo.

113
00:09:34,595 --> 00:09:37,630
Bây giờ, nếu bạn duyệt qua phần còn lại của mã,

114
00:09:37,630 --> 00:09:41,175
nó sẽ trông tất cả quen thuộc với một vài điều mới trong đó.

115
00:09:41,175 --> 00:09:47,290
Chúng tôi sẽ ghé thăm họ như và khi chúng tôi yêu cầu để hiểu thêm một chút chi tiết ở đó.

116
00:09:47,290 --> 00:09:50,655
Vì vậy, bạn có thể thấy rằng máy chủ tĩnh đã được thiết lập,

117
00:09:50,655 --> 00:09:56,150
logger đã được thiết lập ở đó và một số người khác- vì vậy,

118
00:09:56,150 --> 00:10:02,315
điều này là một xử lý toàn cầu cho các lỗi.

119
00:10:02,315 --> 00:10:06,150
Chúng ta sẽ xem làm thế nào để sử dụng nó một cách chi tiết hơn.

120
00:10:06,150 --> 00:10:10,855
Và hai bộ xử lý lỗi bổ sung theo sau này.

121
00:10:10,855 --> 00:10:16,635
Chúng ta sẽ thấy cách chúng ta sử dụng chúng khi chúng ta thực hiện thêm trong ứng dụng này.

122
00:10:16,635 --> 00:10:19,325
Vì vậy, đây là nơi bạn nhận thấy tất cả các thông tin này.

123
00:10:19,325 --> 00:10:23,140
Bây giờ, bạn đang tự hỏi nơi máy chủ chính nó được

124
00:10:23,140 --> 00:10:27,575
cấu hình để máy chủ địa phương và số cổng được cấu hình.

125
00:10:27,575 --> 00:10:34,840
Bây giờ, thông tin này nằm trong tập tin này được gọi là bin/www.

126
00:10:34,840 --> 00:10:38,075
Nếu bạn mở thư mục bin/www,

127
00:10:38,075 --> 00:10:40,340
bạn sẽ thấy thông tin bổ sung ở đây.

128
00:10:40,340 --> 00:10:44,340
Vì vậy, nó nói, var ứng dụng yêu cầu.. slash/ứng dụng.

129
00:10:44,340 --> 00:10:46,330
Vì vậy, từ thư mục bin,

130
00:10:46,330 --> 00:10:47,480
bạn đến đây và sau đó,

131
00:10:47,480 --> 00:10:50,805
tập tin app.js này được yêu cầu ở đây vào này;

132
00:10:50,805 --> 00:10:54,245
và do đó, sẽ tự động bao gồm các express và tất cả mọi thứ.

133
00:10:54,245 --> 00:10:56,440
Và sau đó, ở đây bạn đang thiết lập

134
00:10:56,440 --> 00:11:00,510
máy chủ http ở đây và bạn đang thiết lập số cổng.

135
00:11:00,510 --> 00:11:04,570
Bạn cũng có thể cung cấp số cổng của riêng bạn tại dòng lệnh,

136
00:11:04,570 --> 00:11:08,575
nhưng tại thời điểm này chúng tôi sẽ sử dụng giá trị mặc định, đó là 3000,

137
00:11:08,575 --> 00:11:11,830
và chúng tôi sẽ thiết lập số cổng ở đây; và sau đó,

138
00:11:11,830 --> 00:11:16,935
bạn thấy máy chủ var http.createServer mà bạn đã thấy trước đó,

139
00:11:16,935 --> 00:11:20,590
và máy chủ đang lắng nghe những thứ ở đây.

140
00:11:20,590 --> 00:11:28,050
Và sau đó, cũng có, đây là một số lắng nghe cho các sự kiện ở phía máy chủ.

141
00:11:28,050 --> 00:11:30,940
Chúng ta sẽ trở lại với điều này trong một trong những bài tập sau này.

142
00:11:30,940 --> 00:11:33,320
Và sau đó, dưới đây bạn sẽ thấy một số

143
00:11:33,320 --> 00:11:36,560
mã bổ sung mà thiết lập máy chủ của bạn để có thể

144
00:11:36,560 --> 00:11:43,170
xử lý lỗi và lắng nghe các yêu cầu đến trên số cổng và vân vân.

145
00:11:43,170 --> 00:11:46,080
Tại thời điểm này, đừng lo lắng quá nhiều về mã này.

146
00:11:46,080 --> 00:11:48,730
Chúng tôi sẽ xem lại mã này bất cứ khi nào chúng tôi yêu cầu,

147
00:11:48,730 --> 00:11:55,580
và chúng tôi sẽ sửa đổi mã này như và khi chúng tôi yêu cầu trong một trong các bài tập sau.

148
00:11:55,580 --> 00:12:01,595
Vì vậy, đó là nơi thông tin máy chủ của bạn được thiết lập ở đó.

149
00:12:01,595 --> 00:12:06,070
Và app.js, chúng ta đã thấy thư mục tuyến đường ở đó.

150
00:12:06,070 --> 00:12:15,530
Index.js và users.js là hai tuyến đường mặc định được thiết lập đã cho chúng tôi.

151
00:12:15,530 --> 00:12:19,575
Chúng tôi sẽ sử dụng users.js trong một trong những bài tập sau này.

152
00:12:19,575 --> 00:12:21,900
Và trong thư mục công cộng, chúng

153
00:12:21,900 --> 00:12:25,410
ta hãy đi trước và sao chép index.html và

154
00:12:25,410 --> 00:12:31,345
aboutus.html từ ứng dụng Express của chúng tôi vào thư mục công cộng cũng.

155
00:12:31,345 --> 00:12:39,895
Vì vậy, quay trở lại thư mục công cộng node-express.

156
00:12:39,895 --> 00:12:42,250
Tôi sẽ sao chép hai cái này.

157
00:12:42,250 --> 00:12:47,135
Và sau đó, chúng tôi sẽ trở lại máy chủ nhầm lẫn;

158
00:12:47,135 --> 00:12:49,840
và sau đó, trong thư mục công cộng,

159
00:12:49,840 --> 00:12:52,410
tôi sẽ chỉ cần dán chúng vào vị trí.

160
00:12:52,410 --> 00:12:54,355
Hiện tại, đây là những chỗ dành sẵn.

161
00:12:54,355 --> 00:12:57,960
Sau đó, chúng tôi sẽ thay thế chúng bằng những thứ khác.

162
00:12:57,960 --> 00:13:00,240
Vì vậy, với những thay đổi này,

163
00:13:00,240 --> 00:13:04,385
máy chủ của chúng tôi bây giờ đã được thiết lập đầy đủ để chạy như

164
00:13:04,385 --> 00:13:09,235
một máy chủ API REST và sẽ hỗ trợ tất cả các điểm cuối API REST.

165
00:13:09,235 --> 00:13:13,105
Vì vậy, chúng ta hãy bắt đầu máy chủ của chúng tôi.

166
00:13:13,105 --> 00:13:14,680
Vì vậy, tại dấu nhắc,

167
00:13:14,680 --> 00:13:19,910
gõ npm start và máy chủ của bạn sẽ được khởi động và chạy.

168
00:13:19,910 --> 00:13:24,555
Hãy vào PostBin và gửi một vài yêu cầu đến máy chủ này.

169
00:13:24,555 --> 00:13:29,545
Bây giờ chúng ta hãy gửi một yêu cầu get đến máy chủ địa phương 3000/món ăn,

170
00:13:29,545 --> 00:13:36,210
và bạn sẽ nhận thấy rằng REST API Server đang hoạt động chính xác như chúng ta mong đợi.

171
00:13:36,210 --> 00:13:41,250
Chúng tôi gửi một yêu cầu xóa và nó sẽ xóa các món ăn.

172
00:13:41,250 --> 00:13:44,580
Và sau đó, chúng ta hãy gửi

173
00:13:44,580 --> 00:13:49,800
một yêu cầu xóa cho các chương trình khuyến mãi và bạn thấy rằng nó hoạt động giống như trước đây.

174
00:13:49,800 --> 00:13:55,075
Và chúng tôi làm một bài đăng cho

175
00:13:55,075 --> 00:14:09,430
các chương trình khuyến mãi với fielding cơ thể

176
00:14:23,730 --> 00:14:26,725
và gửi yêu cầu bài đăng,

177
00:14:26,725 --> 00:14:28,750
và bạn sẽ thấy rằng nó nói,

178
00:14:28,750 --> 00:14:31,790
“Chúng tôi sẽ thêm bài kiểm tra khuyến mãi với mô tả chi tiết.”

179
00:14:31,790 --> 00:14:38,425
Hãy gửi điều này cho các nhà lãnh đại.23,

180
00:14:38,425 --> 00:14:45,190
nhưng đặt yêu cầu cho nhà lãnh đại.23 và bạn sẽ thấy rằng nó nói, “Cập nhật nhà lãnh đạo 23.

181
00:14:45,190 --> 00:14:47,655
Sẽ nâng cấp lãnh đạo.” Vì vậy, bạn thấy rằng

182
00:14:47,655 --> 00:14:51,780
các máy phát Express đã tạo ra các ứng dụng và chúng tôi đã sửa đổi

183
00:14:51,780 --> 00:14:55,060
nó để hỗ trợ toàn bộ các điểm cuối REST API mà

184
00:14:55,060 --> 00:14:59,315
chúng tôi cấu hình trong phiên bản trước của bộ định tuyến Express.

185
00:14:59,315 --> 00:15:05,020
Bây giờ, với điều này, chúng tôi hoàn thành bài tập này mà chúng tôi đã chứng minh làm thế nào chúng tôi có thể

186
00:15:05,020 --> 00:15:10,610
sử dụng bộ tạo Express để xây dựng điểm cuối REST API.

187
00:15:10,610 --> 00:15:17,740
Bây giờ, đây là thời điểm tốt cho chúng tôi để làm một Git Kermit của những thay đổi với thông điệp,

188
00:15:17,740 --> 00:15:21,110
“Express generator REST API.”