1
00:00:03,880 --> 00:00:06,815
Hãy để tôi bắt đầu bằng cách

2
00:00:06,815 --> 00:00:11,165
giới thiệu 10 phút về Essentials of Networking.

3
00:00:11,165 --> 00:00:14,045
Với thực tế là chúng tôi có thời gian hạn chế,

4
00:00:14,045 --> 00:00:16,355
tôi sẽ tập trung vào việc cung cấp

5
00:00:16,355 --> 00:00:21,191
cho bạn những yếu tố cần thiết mà bạn cần để hiểu từng chủ đề.

6
00:00:21,191 --> 00:00:26,240
Bây giờ, những gì chúng tôi đề cập trong mô-đun cụ thể này sẽ đòi hỏi

7
00:00:26,240 --> 00:00:30,230
ít nhất một sự hiểu biết thô sơ về cách mạng máy tính

8
00:00:30,230 --> 00:00:34,255
hoạt động trước khi chúng tôi hiểu tại sao chúng tôi cần phải sử dụng HTTP,

9
00:00:34,255 --> 00:00:36,700
tại sao chúng tôi giao tiếp với một máy chủ,

10
00:00:36,700 --> 00:00:42,485
lý do cho sự chậm trễ khi bạn đang nói chuyện với một máy chủ và vân vân.

11
00:00:42,485 --> 00:00:45,920
Và cũng có thể, các giao thức khác nhau mà bạn

12
00:00:45,920 --> 00:00:50,335
cần phải nhận thức trước khi bạn thậm chí có thể giao tiếp với một máy chủ.

13
00:00:50,335 --> 00:00:53,540
Vì vậy, hãy ghi nhớ tất cả điều này,

14
00:00:53,540 --> 00:00:58,945
một giới thiệu nhanh 10 phút về Essentials of Networking.

15
00:00:58,945 --> 00:01:03,600
Chúng tôi bắt đầu nhận ra rằng các ứng dụng web không còn độc lập nữa.

16
00:01:03,600 --> 00:01:11,030
Họ luôn có một báo giá unquote Cloud backend hỗ trợ ứng dụng web của bạn.

17
00:01:11,030 --> 00:01:13,535
Bây giờ những ngày này, mọi thứ đều có trên Đám mây.

18
00:01:13,535 --> 00:01:15,500
Khá sớm bạn cũng sẽ có mặt trên đám mây,

19
00:01:15,500 --> 00:01:19,455
ít nhất là trên đám mây chín với một lớp lót bạc.

20
00:01:19,455 --> 00:01:23,785
Nhưng, cho rằng chúng ta cần

21
00:01:23,785 --> 00:01:29,090
một hỗ trợ phía máy chủ cho ứng dụng góc cạnh của chúng tôi để làm việc một cách chính xác,

22
00:01:29,090 --> 00:01:31,295
có bạn sẽ lưu trữ máy chủ.

23
00:01:31,295 --> 00:01:36,405
Và những ngày này, việc lưu trữ máy chủ rất

24
00:01:36,405 --> 00:01:42,575
dễ dàng thực hiện bằng cách sử dụng một trong những dịch vụ cơ sở hạ tầng dựa trên đám mây,

25
00:01:42,575 --> 00:01:48,260
những thứ như Amazon Web Services hoặc Heroku hoặc Digital

26
00:01:48,260 --> 00:01:55,190
Ocean hoặc nhiều thứ khác cung cấp hỗ trợ máy chủ dựa trên đám mây.

27
00:01:55,190 --> 00:01:59,235
Vì vậy, chính xác những gì có sẵn ở phía máy chủ?

28
00:01:59,235 --> 00:02:06,744
Bạn thường có một frontend máy chủ đang nói chuyện với ứng dụng góc cạnh của bạn,

29
00:02:06,744 --> 00:02:14,615
vì vậy đó là logic máy chủ và đằng sau hậu trường logic máy chủ giao tiếp với

30
00:02:14,615 --> 00:02:23,665
một lưu trữ liên tục như một cơ sở dữ liệu nơi dữ liệu của bạn được lưu trữ và truy xuất từ.

31
00:02:23,665 --> 00:02:26,130
Khi bạn bước vào thế giới mạng,

32
00:02:26,130 --> 00:02:31,064
bạn sẽ sớm bị bắn phá với 304 từ viết tắt nhỏ,

33
00:02:31,064 --> 00:02:36,230
những thứ mà bạn nghĩ rằng bạn biết chúng là gì từ tiếng Anh bình thường hoặc chúng có

34
00:02:36,230 --> 00:02:38,360
ý nghĩa hoặc

35
00:02:38,360 --> 00:02:42,375
mục đích hoàn toàn khác khi bạn gặp chúng trong thế giới mạng đó.

36
00:02:42,375 --> 00:02:44,470
Vì vậy, chúng ta hãy xem xét một vài trong số họ.

37
00:02:44,470 --> 00:02:49,020
Vì vậy, trong thế giới mạng bạn sẽ nghe thấy mọi người nói chuyện qua giao thức HTTP.

38
00:02:49,020 --> 00:02:53,215
Giao thức được sử dụng để giao tiếp giữa máy khách và máy chủ.

39
00:02:53,215 --> 00:02:56,960
Đây là một giao thức lớp ứng dụng mà chúng ta sẽ

40
00:02:56,960 --> 00:03:01,135
nói ngắn gọn về một chút nữa trong phần còn lại của bài giảng này.

41
00:03:01,135 --> 00:03:07,550
Giao thức HTTP để nó hoạt động cần một URL để được cung cấp cho nó,

42
00:03:07,550 --> 00:03:09,715
Uniform Resource Locator.

43
00:03:09,715 --> 00:03:15,205
Vì vậy, đây là một chuỗi các ký tự được phân tách bởi dấu gạch chéo,

44
00:03:15,205 --> 00:03:22,355
với một dấu hai chấm HTTP hoặc một dấu hai chấm HTTPS gắn ở phía trước của nó.

45
00:03:22,355 --> 00:03:25,547
Và tôi chắc chắn nếu bạn đã sử dụng World Wide Web,

46
00:03:25,547 --> 00:03:29,395
bạn khá quen thuộc với những gì các URL trông như thế nào.

47
00:03:29,395 --> 00:03:33,230
Ngoài ra, bạn sẽ nghe mọi người nói về JSON,

48
00:03:33,230 --> 00:03:38,380
không phải bạn của bạn Jason mà là JavaScript Object Notation.

49
00:03:38,380 --> 00:03:43,610
Vì vậy, JavaScript Object Notation là một cách để mã hóa dữ liệu

50
00:03:43,610 --> 00:03:49,660
đang được vận chuyển từ phía máy chủ sang phía máy khách hoặc ngược lại.

51
00:03:49,660 --> 00:03:54,320
Và bạn cũng sẽ nghe mọi người nói về XML nhưng một cách khác để

52
00:03:54,320 --> 00:04:01,205
mã hóa dữ liệu trong khi nó đang vận chuyển giữa máy khách và máy chủ phía.

53
00:04:01,205 --> 00:04:08,375
Bây giờ, bạn cũng sẽ nghe mọi người nói về

54
00:04:08,375 --> 00:04:14,045
các giao thức cấp cao hơn gọi là SOAP, không phải là loại bạn tắm với nhưng SOAP như một giao thức

55
00:04:14,045 --> 00:04:21,975
cho phép giao tiếp giữa các thực thể phân phối trong mạng của họ.

56
00:04:21,975 --> 00:04:25,295
Và cũng có thể, bạn sẽ nghe mọi người nói về REST,

57
00:04:25,295 --> 00:04:29,505
không phải là điều mà bạn nhận được quá nhiều trải qua khóa học đặc biệt này,

58
00:04:29,505 --> 00:04:32,510
REST hoặc Chuyển giao trạng thái đại diện.

59
00:04:32,510 --> 00:04:36,200
Tôi sẽ có một bài giảng ngắn hơn

60
00:04:36,200 --> 00:04:40,970
đặc biệt dành cho REST một chút sau đó trong mô-đun này.

61
00:04:40,970 --> 00:04:42,905
Và trong thế giới HTTP,

62
00:04:42,905 --> 00:04:45,990
bạn sẽ nghe mọi người nói về GET, PUT,

63
00:04:45,990 --> 00:04:50,210
POST, và DELETE và bạn sẽ tự hỏi,

64
00:04:50,210 --> 00:04:52,200
tất cả chúng có ý nghĩa gì?

65
00:04:52,200 --> 00:04:55,250
Chúng ta hãy tìm hiểu một chút về những

66
00:04:55,250 --> 00:05:01,245
điều này trong bài giảng này và cũng là bài giảng về REST mà bạn sẽ thấy một chút sau đó.

67
00:05:01,245 --> 00:05:05,020
Một điều quan trọng mà bạn cần phải hiểu khi bạn đang

68
00:05:05,020 --> 00:05:10,120
giao tiếp với một máy chủ là máy chủ khách giao tiếp

69
00:05:10,120 --> 00:05:15,130
gây ra số lượng bất ngờ của sự chậm trễ hoặc không xác định số lượng chậm trễ

70
00:05:15,130 --> 00:05:21,340
trong khi dữ liệu đang được lấy hoặc tải lên máy chủ từ trang web khách hàng.

71
00:05:21,340 --> 00:05:23,270
Vì vậy, điều đó có nghĩa là trong ứng dụng trang web khách hàng của

72
00:05:23,270 --> 00:05:27,310
bạn, bạn cần phải giữ cho người dùng thông báo về thực tế

73
00:05:27,310 --> 00:05:31,750
là một cái gì đó

74
00:05:35,335 --> 00:05:41,020
đang xảy ra đằng sau hậu trường và có thể xử lý sự chậm trễ và có thể không thể có được dữ liệu từ phía máy chủ.

75
00:05:41,020 --> 00:05:45,490
Nó là khá có thể là khi bạn cố gắng để kết nối với một máy chủ,

76
00:05:45,490 --> 00:05:47,765
kết nối của máy chủ có thể thất bại, máy

77
00:05:47,765 --> 00:05:53,920
chủ có thể trả lại dữ liệu không chính xác hoặc có thể gây ra một lỗi trong giao tiếp.

78
00:05:53,920 --> 00:05:58,750
Tất cả những điều này phải được xử lý ở phía khách hàng của bạn một cách thích hợp để ứng dụng của bạn

79
00:05:58,750 --> 00:06:04,450
vẫn sẽ tiếp tục hoạt động ngay cả khi có những vấn đề này.

80
00:06:04,450 --> 00:06:09,250
Nhảy vào giao thức lớp ứng dụng phổ biến nhất

81
00:06:09,250 --> 00:06:12,880
được sử dụng để giao tiếp giữa máy khách và máy chủ,

82
00:06:12,880 --> 00:06:15,405
Giao thức truyền siêu văn bản.

83
00:06:15,405 --> 00:06:18,585
Nhưng đây là một giao thức giao tiếp máy chủ khách.

84
00:06:18,585 --> 00:06:20,800
Bây giờ điều đó có thể hoặc có thể không làm cho nhiều ý nghĩa cho

85
00:06:20,800 --> 00:06:23,532
bạn trừ khi bạn có đủ nền tảng trong mạng,

86
00:06:23,532 --> 00:06:28,480
nhưng đây là một giao thức được sử dụng để mã hóa các thông điệp

87
00:06:28,480 --> 00:06:31,330
mà bạn trao đổi giữa ứng dụng khách hàng của bạn là

88
00:06:31,330 --> 00:06:35,375
một ứng dụng góc cạnh trong trường hợp này và một phía máy chủ.

89
00:06:35,375 --> 00:06:38,620
Vì vậy, giao thức HTTP này cho phép bạn

90
00:06:38,620 --> 00:06:42,450
truy xuất các tài liệu dựa trên siêu văn bản từ phía máy chủ,

91
00:06:42,450 --> 00:06:47,200
ngày càng nhiều thông tin được tải về từ phía máy chủ được

92
00:06:47,200 --> 00:06:52,495
mã hóa theo một trong các định dạng mã hóa chuẩn như JSON hoặc XML.

93
00:06:52,495 --> 00:06:55,750
Và để có thể nói chuyện với một máy chủ,

94
00:06:55,750 --> 00:07:04,180
bạn có sự hỗ trợ từ các hành động HTTP khác nhau hoặc những gì chúng tôi gọi là động từ HTTP, HE

95
00:07:04,180 --> 00:07:07,135
AD, GET, POST, PU

96
00:07:07,135 --> 00:07:11,020
T, DELETE, TRACE, OPTIONS, và CONNECT.

97
00:07:11,020 --> 00:07:14,080
Chúng ta sẽ thấy cụ thể các động từ GET, PUT, POST,

98
00:07:14,080 --> 00:07:24,395
và DELETE chi tiết hơn khi chúng ta kiểm tra giao thức REST API một chút sau đó.

99
00:07:24,395 --> 00:07:27,670
Giao thức HTTP hoạt động như thế nào?

100
00:07:27,670 --> 00:07:30,010
Trong giao thức HTTP,

101
00:07:30,010 --> 00:07:35,215
bạn đang gửi yêu cầu GET từ ứng dụng khách hàng của bạn đến máy chủ.

102
00:07:35,215 --> 00:07:39,780
Và điều này được mã hóa dưới dạng một tin nhắn yêu cầu HTTP.

103
00:07:39,780 --> 00:07:43,760
Thông báo yêu cầu thường mang một URL

104
00:07:43,760 --> 00:07:48,995
trong thông báo yêu cầu chỉ ra những gì bạn muốn phía máy chủ gửi cho bạn.

105
00:07:48,995 --> 00:07:52,660
Và đây thường là một tin nhắn GET nếu bạn

106
00:07:52,660 --> 00:07:57,440
muốn dữ liệu được tải xuống từ phía máy chủ.

107
00:07:57,440 --> 00:08:02,110
Bạn cũng sẽ chỉ định máy chủ cụ thể mà bạn đang giao tiếp với.

108
00:08:02,110 --> 00:08:04,864
Khi máy chủ nhận được yêu cầu của bạn,

109
00:08:04,864 --> 00:08:09,325
máy chủ sẽ truy xuất dữ liệu từ lưu trữ dữ liệu của nó,

110
00:08:09,325 --> 00:08:11,980
thường là một cơ sở dữ liệu ở phía máy chủ,

111
00:08:11,980 --> 00:08:14,250
và sau đó đóng gói dữ liệu này trong

112
00:08:14,250 --> 00:08:20,420
một định dạng thích hợp và gửi dữ liệu trở lại cho bạn ở phía máy khách của bạn.

113
00:08:20,420 --> 00:08:23,285
Nếu bạn đang có được

114
00:08:23,285 --> 00:08:25,240
mã HTML, CSS và JavaScript chuẩn từ phía máy chủ,

115
00:08:25,240 --> 00:08:27,310
thì trình duyệt của bạn có thể hiển thị điều này.

116
00:08:27,310 --> 00:08:30,144
Nhưng với các ứng dụng như Angular,

117
00:08:30,144 --> 00:08:32,830
bạn chủ yếu kết nối với máy chủ và sau đó

118
00:08:32,830 --> 00:08:39,700
truy xuất dữ liệu dưới dạng JSON hoặc XML hầu hết thời gian.

119
00:08:39,700 --> 00:08:44,200
Ngoại trừ việc tải xuống ban đầu của tất cả các tài nguyên được yêu cầu

120
00:08:44,200 --> 00:08:49,245
cho ứng dụng Angular của bạn được thực hiện trong trình duyệt của bạn.

121
00:08:49,245 --> 00:08:51,090
Vì vậy, như chúng ta đã thấy trước đó,

122
00:08:51,090 --> 00:08:59,139
ứng dụng HTTP yêu cầu tin nhắn được gửi giữa máy khách và máy chủ.

123
00:08:59,139 --> 00:09:03,615
Thông báo yêu cầu thường được gửi từ máy khách đến máy chủ và

124
00:09:03,615 --> 00:09:09,500
thông báo yêu cầu bao gồm một dòng yêu cầu cộng với một loạt các tiêu đề,

125
00:09:09,500 --> 00:09:14,170
nơi bạn cung cấp thông tin bổ sung để đủ điều kiện yêu cầu.

126
00:09:14,170 --> 00:09:17,410
Chúng ta sẽ thấy việc sử dụng các tiêu đề và cài đặt khác nhau

127
00:09:17,410 --> 00:09:23,425
trong tiêu đề khi chúng ta đi qua một số bài tập trong mô-đun cụ thể này.

128
00:09:23,425 --> 00:09:27,045
Dòng yêu cầu và tiêu đề được tách ra từ nội dung

129
00:09:27,045 --> 00:09:31,280
của thư yêu cầu bằng một dòng trống.

130
00:09:31,280 --> 00:09:34,300
Nội dung của thư có thể chứa dữ liệu bổ sung

131
00:09:34,300 --> 00:09:38,460
đặc biệt là nếu khách hàng của bạn đang gửi dữ liệu qua phía máy chủ.

132
00:09:38,460 --> 00:09:40,735
Ví dụ khi bạn gửi một biểu mẫu,

133
00:09:40,735 --> 00:09:45,190
thông tin trong biểu mẫu được mã hóa thành

134
00:09:45,190 --> 00:09:51,115
một định dạng JSON và sau đó gửi qua phía máy chủ từ phía máy khách.

135
00:09:51,115 --> 00:09:55,640
Vì vậy, điều đó sẽ được thực hiện bằng cách sử dụng một POST hoặc một tin nhắn PUT.

136
00:09:55,640 --> 00:10:00,374
Nhìn vào các chi tiết nhỏ hơn của thông điệp yêu cầu HTTP, thông

137
00:10:00,374 --> 00:10:02,500
điệp yêu cầu điển hình

138
00:10:02,500 --> 00:10:06,140
trong dòng yêu cầu sẽ chứa phương pháp đó là GET, PUT, POST,

139
00:10:06,140 --> 00:10:10,225
DELETE hoặc một số động từ khác mà bạn đã thấy trước

140
00:10:10,225 --> 00:10:13,735
đó, và sau đó là URL và phiên bản

141
00:10:13,735 --> 00:10:19,260
của Giao thức HTTP mà bạn đang sử dụng để giao tiếp từ máy khách đến phía máy chủ.

142
00:10:19,260 --> 00:10:23,250
Trường tiêu đề thường chứa tên trường tiêu đề,

143
00:10:23,250 --> 00:10:27,310
dấu hai chấm và giá trị cho trường tiêu đề đó.

144
00:10:27,310 --> 00:10:30,020
Và nội dung cơ thể, như tôi đã đề cập,

145
00:10:30,020 --> 00:10:36,090
có thể được mã hóa ở định dạng JSON hoặc XML.

146
00:10:36,090 --> 00:10:39,355
Dưới đây là một ví dụ về

147
00:10:39,355 --> 00:10:46,040
một thông báo yêu cầu HTTP điển hình có thể được gửi đến máy chủ từ máy khách.

148
00:10:46,040 --> 00:10:48,000
Vì vậy, trong thông điệp yêu cầu đặc biệt này,

149
00:10:48,000 --> 00:10:52,540
chúng tôi đang yêu cầu máy chủ giữ lại trang index.html từ

150
00:10:52,540 --> 00:10:55,150
phía máy chủ sang phía máy khách để nó có

151
00:10:55,150 --> 00:10:58,100
thể được hiển thị trong trình duyệt ở phía máy khách.

152
00:10:58,100 --> 00:11:03,790
Một yêu cầu như thế này thường có một nội dung trống trong thư yêu cầu.

153
00:11:03,790 --> 00:11:06,460
Hầu hết các thông tin sẽ được mã hóa

154
00:11:06,460 --> 00:11:11,755
trong dòng yêu cầu cộng với các tiêu đề của thông điệp yêu cầu.

155
00:11:11,755 --> 00:11:15,935
Khi khách hàng gửi yêu cầu đến máy chủ.

156
00:11:15,935 --> 00:11:22,120
Máy chủ sẽ xử lý các yêu cầu và sau đó gửi lại một trả lời cho phía khách hàng.

157
00:11:22,120 --> 00:11:26,150
Thư trả lời được tổ chức thành một lần nữa, ba phần,

158
00:11:26,150 --> 00:11:30,850
một dòng trạng thái nơi một số thông tin về cách

159
00:11:30,850 --> 00:11:35,648
yêu cầu đã được xử lý và những gì đang được gửi lại cho khách hàng được lưu trữ,

160
00:11:35,648 --> 00:11:40,270
các tiêu đề sẽ chứa thêm chi tiết về những gì được

161
00:11:40,270 --> 00:11:45,145
chứa trong thư phản hồi và sau đó theo sau là một dòng trống,

162
00:11:45,145 --> 00:11:49,355
và sau đó là nội dung thực tế của thư.

163
00:11:49,355 --> 00:11:55,405
Một ví dụ về những gì sẽ thường được chứa trong một thông báo phản hồi HTTP,

164
00:11:55,405 --> 00:11:59,875
trong trường hợp này, thông báo phản hồi này sẽ trở lại với một 200,

165
00:11:59,875 --> 00:12:03,260
đó là một mã trạng thái của thông báo.

166
00:12:03,260 --> 00:12:07,420
Nếu bạn thấy một 200 trong dòng yêu cầu dưới dạng mã trạng thái,

167
00:12:07,420 --> 00:12:11,770
điều đó có nghĩa là yêu cầu của bạn đã thành công và máy chủ có thể

168
00:12:11,770 --> 00:12:16,920
trả về dữ liệu mà bạn đã yêu cầu từ phía máy chủ.

169
00:12:16,920 --> 00:12:22,180
Và sau đó tiêu đề sẽ chứa các hướng dẫn bổ sung cho

170
00:12:22,180 --> 00:12:25,165
phía khách hàng bao gồm thông tin về

171
00:12:25,165 --> 00:12:29,425
cách nội dung thực tế của tin nhắn được mã hóa.

172
00:12:29,425 --> 00:12:31,705
Sau đó, nội dung có thể chứa,

173
00:12:31,705 --> 00:12:34,565
nếu bạn đã yêu cầu trang index.html,

174
00:12:34,565 --> 00:12:39,670
nội dung của thư sẽ chứa mã HTML cho

175
00:12:39,670 --> 00:12:45,515
trang index.html như bạn thấy trong ví dụ này ở đây.

176
00:12:45,515 --> 00:12:53,955
Một trong những mẩu thông tin trong dòng trạng thái mà tôi gọi là mã trạng thái.

177
00:12:53,955 --> 00:12:58,080
Nếu máy chủ có thể xử lý yêu cầu của bạn

178
00:12:58,080 --> 00:13:01,852
một cách chính xác, nó sẽ gửi trả lời với mã trạng thái là 200,

179
00:13:01,852 --> 00:13:04,330
nghĩa là mọi thứ đều ổn ở phía máy chủ và

180
00:13:04,330 --> 00:13:07,685
phía máy chủ đang trả lại dữ liệu một cách chính xác.

181
00:13:07,685 --> 00:13:12,055
Nếu máy chủ không thể xử lý yêu cầu vì bất cứ lý do gì,

182
00:13:12,055 --> 00:13:14,800
thì thông tin đó sẽ được mã hóa

183
00:13:14,800 --> 00:13:20,020
trong mã trạng thái trong dòng trạng thái của thư trả lời.

184
00:13:20,020 --> 00:13:24,160
Các mã trạng thái khác nhau thường mà bạn sẽ gặp phải khi bạn

185
00:13:24,160 --> 00:13:28,355
nhận được một câu trả lời từ phía máy chủ bao gồm một 201,

186
00:13:28,355 --> 00:13:30,985
có nghĩa là khi bạn cố gắng tạo ra

187
00:13:30,985 --> 00:13:34,540
một đối tượng ở phía máy chủ nó đã được tạo thành công,

188
00:13:34,540 --> 00:13:39,100
hoặc một 301 có nghĩa là bất cứ điều gì bạn đang yêu cầu đã di chuyển vĩnh viễn

189
00:13:39,100 --> 00:13:42,365
đến một vị trí mới và URL của

190
00:13:42,365 --> 00:13:46,965
vị trí mới của tài nguyên đó sẽ được trả về phía khách hàng của bạn.

191
00:13:46,965 --> 00:13:52,775
400s và 500s thường chỉ ra rằng có một số vấn đề ở phía máy chủ.

192
00:13:52,775 --> 00:13:57,310
404 là một cái gì đó mà bạn thường gặp khi

193
00:13:57,310 --> 00:14:02,260
bạn yêu cầu một cái gì đó không tồn tại ở phía máy chủ.

194
00:14:02,260 --> 00:14:05,620
Tương tự, 500 có nghĩa là máy chủ chỉ bỏ cuộc,

195
00:14:05,620 --> 00:14:10,390
nó không thể xử lý yêu cầu của bạn và sau đó gửi lại một lỗi máy chủ nội bộ.

196
00:14:10,390 --> 00:14:14,445
Đây là hai mã lỗi phổ biến mà bạn sẽ gặp phải.

197
00:14:14,445 --> 00:14:20,355
Những cái còn lại có ý nghĩa cụ thể như được liệt kê trong bảng này ở đây.

198
00:14:20,355 --> 00:14:24,483
Có nhiều hơn các mã trạng thái mà tôi đã cung cấp cho bạn trong bảng này,

199
00:14:24,483 --> 00:14:27,963
nhưng đây là một số mã trạng thái phổ biến nhất mà bạn sẽ

200
00:14:27,963 --> 00:14:32,835
gặp phải trong một tin nhắn trả lời đến từ phía máy chủ.

201
00:14:32,835 --> 00:14:37,420
Một điểm khác mà tôi đã đề cập là một thực tế rằng các máy chủ có thể mã hóa

202
00:14:37,420 --> 00:14:46,880
dữ liệu trong một định dạng cụ thể như XML hoặc Extended Markup Language hoặc JSON,

203
00:14:46,880 --> 00:14:50,845
định dạng JavaScript Object Notation.

204
00:14:50,845 --> 00:14:53,950
Bây giờ thông thường, trong khóa học đặc biệt này,

205
00:14:53,950 --> 00:14:57,700
chúng tôi sẽ được đối phó với dữ liệu được mã hóa chủ yếu trong JSON.

206
00:14:57,700 --> 00:15:02,875
Hầu hết các ứng dụng phía khách hàng

207
00:15:02,875 --> 00:15:06,680
bao gồm các ứng dụng di động những ngày này thường giao tiếp với

208
00:15:06,680 --> 00:15:16,515
máy chủ và định dạng trao đổi dữ liệu là JSON theo mặc định trong hầu hết các trường hợp.

209
00:15:16,515 --> 00:15:22,125
Đó là lý do tôi sẽ dành một vài phút giải thích cho bạn về JSON.

210
00:15:22,125 --> 00:15:27,785
Ký hiệu đối tượng JavaScript hay JSON là một định dạng trao đổi dữ liệu nhẹ.

211
00:15:27,785 --> 00:15:33,100
Lý do định dạng dữ liệu JSON đặc biệt quan

212
00:15:33,100 --> 00:15:38,685
tâm đến chúng tôi trong khóa học này là vì ký hiệu đối tượng JavaScript,

213
00:15:38,685 --> 00:15:40,710
như tên gọi của nó,

214
00:15:40,710 --> 00:15:46,840
rất dễ dàng ánh xạ vào một đối tượng JavaScript mà bạn sử dụng với bất kỳ mã JavaScript nào.

215
00:15:46,840 --> 00:15:50,430
Vì vậy, việc chuyển đổi một đối tượng JavaScript

216
00:15:50,430 --> 00:15:53,725
thành ký hiệu JSON và ngược lại là rất đơn giản.

217
00:15:53,725 --> 00:15:57,420
Ký hiệu JSON là những gì chúng ta gọi là một

218
00:15:57,420 --> 00:16:01,815
tự mô tả và rất dễ hiểu ký hiệu.

219
00:16:01,815 --> 00:16:05,103
Trong định dạng JavaScript Object Notation,

220
00:16:05,103 --> 00:16:11,040
dữ liệu được cấu trúc theo một cách rất sạch sẽ, được chỉ định.

221
00:16:11,040 --> 00:16:14,693
Điều này được cấu trúc như là một tập hợp các tên, cặp giá trị,

222
00:16:14,693 --> 00:16:19,610
và điều này được cấu trúc như một danh sách các giá trị có thứ tự.

223
00:16:19,610 --> 00:16:23,375
Bạn có thể thấy một ví dụ về điều này ở phía bên tay phải ở đây.

224
00:16:23,375 --> 00:16:30,750
Chúng tôi đã thực sự sử dụng dữ liệu JSON này trong ứng dụng góc cạnh của chúng tôi đã sớm hơn.

225
00:16:30,750 --> 00:16:35,570
Vì vậy, bây giờ bạn thấy lý do tại sao dữ liệu được cấu trúc theo cách đó.

226
00:16:35,570 --> 00:16:41,220
Và bạn cũng nhận ra rằng nó là rất dễ dàng để có thể đối phó với

227
00:16:41,220 --> 00:16:47,850
dữ liệu này trong JavaScript của bạn hoặc mã TypeScript của bạn trong ứng dụng Angular của bạn.

228
00:16:47,850 --> 00:16:55,000
Với điều này, tôi hoàn thành một cái nhìn tổng quan nhanh về các yếu tố cần thiết của mạng.