Hãy để tôi bắt đầu bằng cách
giới thiệu 10 phút về các yếu tố cần thiết của mạng.
Tôi càng dạy tiếng Anh, tôi càng nhận ra rằng chỉ để sử dụng các tính năng đẹp nhất
của góc cạnh, bạn cần phải có một sự hiểu biết về rất nhiều FIN kết nối khác nhau
trước khi bạn thậm chí có thể hiểu được những gì bạn đang làm với góc cạnh.
Ngay khi bạn bắt đầu theo đuổi từng FIN này,
họ sẽ tự mình trở thành toàn bộ khóa học và khá sớm,
tôi sẽ dạy toàn bộ chương trình giảng dạy khoa học máy tính của họ cho bạn.
Nhưng với thực tế là chúng tôi có thời gian hạn chế,
tôi sẽ tập trung vào việc cung cấp
cho bạn những yếu tố cần thiết mà bạn cần để hiểu từng chủ đề.
Bây giờ, những gì chúng ta đề cập trong mô-đun cụ thể này sẽ đòi hỏi
ít nhất một sự hiểu biết thô sơ về cách mạng máy tính hoạt động
trước khi chúng ta hiểu tại sao chúng ta cần sử dụng HTTP,
tại sao chúng ta giao tiếp với một máy chủ.
Lý do cho sự chậm trễ là khi bạn đang nói chuyện với một máy chủ,
và như vậy.
Và cũng có thể, các giao thức khác nhau mà bạn 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ủ.
Vì vậy, hãy ghi nhớ tất cả điều này,
một giới thiệu nhanh 10 phút về các yếu tố cần thiết của mạng.
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.
Họ luôn có một báo giá unquote đám mây back-end hỗ trợ ứng dụng web của bạn.
Bây giờ, những ngày này mọi thứ đều có trên Đám mây.
Chẳng bao lâu bạn cũng sẽ có mặt trên đám mây, ít nhất là trên đám mây 9 với một lớp lót bạc.
Nhưng cho rằng chúng ta cần một hỗ trợ Silverside 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,
có bạn sẽ lưu trữ máy chủ.
Và những ngày này lưu trữ máy chủ rất 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.
Những thứ như Amazon, Web Services hoặc Heroku hoặc Digital Ocean
hoặc nhiều thứ khác cung cấp hỗ trợ máy chủ dựa trên đám mây
mà bạn có thể tận dụng để cung cấp hỗ trợ máy chủ cho ứng dụng góc cạnh của bạn.
Vì vậy, ở phía máy chủ, chính xác những gì có sẵn ở phía máy chủ?
Bạn thường có một máy chủ front-end đó là nói chuyện với ứng dụng góc cạnh của bạn.
Vì vậy, đó là logic máy chủ và đằng sau hậu trường,
logic máy chủ đang giao tiếp với một bộ nhớ 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ừ.
Khi bạn bước vào thế giới mạng, bạn sẽ sớm bị bắn phá
với 304 từ viết tắt nhỏ. Những
điều 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ó một ý nghĩa
hoặc mục đích hoàn toàn khác khi bạn gặp chúng trong thế giới mạng.
Vì vậy, chúng ta hãy xem xét một vài trong số họ.
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.
Giao thức được sử dụng để giao tiếp giữa máy khách và máy chủ.
Đây là một giao thức lớp ứng dụng
mà chúng ta sẽ 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.
Giao thức HTTP để nó hoạt động cần một URL để được cung cấp cho nó,
Uniform Resource Locator.
Vì vậy, đây là một chuỗi các ký tự phân cách bằng dấu gạch chéo với trong mỗi dấu hai chấm TTP,
trên một https: gắn ở phía trước của nó.
Và tôi chắc chắn nếu bạn được sử dụng web trên toàn thế giới,
bạn đã khá quen thuộc với những gì các URL trông như thế nào.
Bây giờ, ngoài ra, bạn sẽ nghe mọi người nói về JSON,
không phải với bạn bè của bạn Jason mà là JavaScript Object Notation.
Vì vậy, JavaScript Object Notation là một cách để mã hóa dữ liệu đ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.
Và cũng có thể, bạn sẽ nghe mọi người nói về XML,
nhưng một cách khác để mã hóa dữ liệu trong khi nó đang vận chuyển
giữa trang web khách hàng và máy chủ.
Bây giờ, và bạn cũng sẽ nghe mọi người nói về
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, mà là SOAP như một giao thức
cho phép giao tiếp giữa các thực thể phân phối trong mạng.
Và cũng có thể, bạn sẽ nghe mọi người nói về REST, 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.
REST hoặc một chuyển nhượng tiểu bang đại diện.
Tôi sẽ có một bài giảng ngắn hơn đặc biệt dành
cho REST một chút sau đó trong mô-đun này.
Và trong thế giới HTTP, bạn sẽ nghe mọi người nói về GET, P
UT, POST và DELETE, và bạn sẽ tự hỏi,
tất cả chúng có ý nghĩa gì?
Chúng ta hãy tìm hiểu một chút về đ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 đó.
Một điều quan trọng mà bạn cần phải hiểu khi bạn đang giao tiếp
với một máy chủ là giao tiếp máy chủ khách 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ễ trong khi dữ liệu đang được lấy hoặc tải lên máy chủ từ phía khách hàng.
Vì vậy, có nghĩa là trong ứng dụng khách hàng-máy chủ của
bạn, bạn cần phải giữ cho người dùng thông báo về thực tế
là một cái gì đó
đ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ủ.
Nó là khá có thể là khi bạn cố gắng để kết nối với một máy chủ,
kết nối với máy chủ có thể thất bại, máy
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.
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 vẫn sẽ được hoạt động ngay cả trong sự hiện diện của những vấn đề này.
Nhảy vào giao thức lớp ứng dụng phổ biến nhất được sử dụng để giao tiếp
giữa máy khách và máy chủ, Giao thức truyền siêu văn bản
nhưng đây là giao thức giao tiếp máy chủ máy khách.
Bây giờ, điều đó có thể hoặc có thể không làm cho nhiều ý nghĩa cho
bạn trừ khi bạn có đủ nền tảng trong mạng nhưng đây là một giao thức
được sử dụng để mã hóa các tin nhắn mà bạn trao đổi giữa ứng dụng khách hàng của bạn,
đó là một ứng dụng góc cạnh trong trường hợp này, và một phía máy chủ.
Vì vậy, giao thức HTTP này cho phép bạn 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ủ ngày càng nhiều thông tin được tải về
từ phía máy chủ được mã hóa theo một trong các định dạng mã hóa chuẩn như JSON hoặc XML.
Và, để có thể nói chuyện với một máy chủ,
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: HEAD, GET, POST, PU
T, DELETE, TRACE, OPTIONS và CONNECT.
Chúng ta sẽ thấy cụ thể các động từ GET, PUT, POST và DELETE chi tiết hơn
khi chúng ta kiểm tra giao thức API còn lại một chút sau đó.
Giao thức HTTP hoạt động như thế nào?
Trong giao thức HTTP, bạn đang gửi một yêu cầu từ ứng dụng khách hàng của bạn đến máy chủ
và điều này được mã hóa dưới dạng một thông điệp yêu cầu HTTP.
Thông báo yêu cầu thường mang một URL trong thông báo yêu cầu chỉ ra,
nó là gì mà bạn muốn với phía máy chủ để gửi cho bạn
và điều này thường là một thông báo GET
nếu bạn muốn dữ liệu được tải xuống từ trang web máy chủ.
Và bạn cũng sẽ chỉ định máy chủ cụ thể mà bạn đang giao tiếp với.
Khi máy chủ nhận được yêu cầu của bạn, máy chủ sẽ
truy xuất dữ liệu từ lưu trữ dữ liệu của nó, thường là một cơ sở dữ liệu ở phía máy chủ,
và sau đó đóng gói dữ liệu này trong một bốn trở lại 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.
Nếu bạn đang có được mã HTML, CSS và javascript chuẩn từ phía máy chủ,
thì trình duyệt của bạn có thể hiển thị điều này.
Trở lại với các ứng dụng như góc cạnh, bạn chủ yếu kết nối với máy chủ
và sau đó truy xuất dữ liệu dưới dạng JSON hoặc XML hầu hết thời gian.
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 cho các ứng dụng góc cạnh được thực hiện trong trình duyệt của bạn.
Vì vậy, như chúng ta đã thấy trước đó ứng dụng HTTP yêu cầu tin nhắn được gửi
giữa máy khách và máy chủ.
Một thư yêu cầu thường được gửi từ máy khách đến máy chủ,
và thư 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 đề
nơi bạn cung cấp thông tin bổ sung để đủ điều kiện yêu cầu.
Chúng ta sẽ thấy việc sử dụng các tiêu đề
và cài đặt khác nhau trong tiêu đề khi chúng ta đi qua một
số bài tập trong mô-đun cụ thể này.
Dòng yêu cầu và tiêu đề được tách
ra từ nội dung của thư yêu cầu bằng một dòng trống.
Nội dung của thư có thể chứa dữ liệu bổ sung đặ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ủ.
Ví dụ, khi bạn gửi một biểu mẫu,
thông tin trong biểu mẫu được mã hóa thành một định dạng JSON
và sau đó gửi qua phía máy chủ từ phía máy khách.
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.
Nhìn vào một chút chi tiết của thông điệp yêu cầu HTTP, thông
điệp yêu cầu điển hình trong dòng yêu cầu sẽ chứa Phương pháp,
hoặc là GET, PUT, PAUSE, DELETE
hoặc một số động từ khác mà bạn đã thấy trước đó.
Và sau đó, tiếp theo là URL và phiên bản 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ủ.
Trường tiêu đề thường chứa tên trường tiêu đề, dấu hai chấm
và giá trị cho trường tiêu đề đó.
Và nội dung cơ thể, như tôi đã đề cập, có thể được mã hóa ở định dạng JSON hoặc XML.
Dưới đây là một ví dụ về 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.
Vì vậy, trong thông điệp yêu cầu đặc biệt này, chúng tôi đang yêu cầu máy chủ giữ lại
và trang index.hmtl từ phía máy chủ sang phía máy khách để
nó có thể được hiển thị trong trình duyệt ở phía máy khách.
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.
Hầu hết các thông tin sẽ được mã hóa 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.
Khi khách hàng gửi yêu cầu tới máy chủ, máy
chủ sẽ xử lý yêu cầu và sau đó gửi lại trả lời cho phía khách hàng.
Thư trả lời được tổ chức thành, một lần nữa, ba phần. Một
dòng trạng thái với một số thông tin về cách 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ữ.
Các tiêu đề sẽ chứa thêm chi tiết về những gì được chứa trong thư phản hồi,
và sau đó theo sau là một dòng trống và sau đó là nội dung thực tế của thư.
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.
Trong trường hợp này thông báo phản hồi này là trở lại với một 200
mà là một mã trạng thái của thông báo.
Nếu bạn thấy ở đây, 200 trong dòng yêu cầu như một mã trạng thái.
Nó có nghĩa là yêu cầu của bạn đã thành
công và máy chủ có thể trả về dữ liệu mà bạn đã yêu cầu từ phía máy chủ.
Và sau đó, tiêu đề sẽ chứa các hướng dẫn bổ sung cho phía khách hàng,
bao gồm thông tin về cách nội dung thực tế của thư được mã hóa.
Sau đó, nội dung có thể chứa, nếu bạn đã yêu cầu trang HTML chỉ
mục, nội dung của thư sẽ chứa mã HTML
cho trang HTML chỉ mục bắt đầu như bạn thấy trong ví dụ này ở đây.
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 đó.
Nếu máy chủ có thể xử lý yêu cầu của bạn
một cách chính xác, nó sẽ gửi trả lời với điểm trạng thái 200,
nghĩa là mọi thứ đều ổn ở phía máy chủ,
và phía máy chủ đang trả lại dữ liệu một cách chính xác.
Nếu máy chủ không thể xử lý yêu cầu vì bất cứ lý do gì,
thì thông tin đó sẽ được mã hóa trong mã trạng thái trong
dòng trạng thái đó của thư trả lời.
Các mã trạng thái khác nhau, thông thường, mà bạn sẽ gặp phải
khi bạn nhận được một câu trả lời từ phía máy chủ,
bao gồm một 201 có nghĩa là khi bạn cố gắng tạo ra một đối tượng ở phía máy chủ,
nó đã được tạo thành công 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 đến một vị trí mới,
và rằng bạn đang ở trên vị trí mới của tài nguyên đó
sẽ được trả lại cho phía khách hàng của bạn.
400s và 500s thường chỉ ra rằng có một số vấn đề ở phía máy chủ.
Một 404 là một cái gì đó mà bạn thường gặp khi bạn yêu
cầu một cái gì đó không tồn tại ở phía máy chủ.
Tương tự như vậy, một 500 có nghĩa là máy chủ chỉ từ bỏ,
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ộ.
Đây là hai mã lỗi phổ biến mà bạn sẽ gặp phải.
Những cái còn lại có ý nghĩa cụ thể như được liệt kê trong bảng này ở đây.
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 nhưng đây là một số mã trạng thái phổ biến nhất
mà bạn sẽ gặp phải trong thư trả lời đến từ phía máy chủ.
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 dữ liệu
trong một định dạng cụ thể như XML hoặc Extensible Markup Language hoặc JSON, JavaScript
Object Notation cho điều đó.
Bây giờ, thông thường trong khóa học đặc biệt này, chúng tôi sẽ được đối phó với
dữ liệu được mã hóa chủ yếu trong JSON.
Hầu hết các ứng dụng, ứng dụng phía máy khách bao gồm các ứng dụng di động những ngày này,
thường giao tiếp với 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.
Đó là lý do tôi sẽ dành một vài phút giải thích cho bạn về JSON.
Ký hiệu đối tượng javascript, hay JSON, là một định dạng trao đổi dữ liệu nhẹ.
Lý do mà định dạng dữ liệu JSON đặc biệt quan tâm đến chúng tôi trong khóa học này là
vì ký hiệu đối tượng javascript, như tên của nó,
rất dễ dàng bản đồ vào một đối tượng javascript mà bạn sử dụng với bất kỳ mã javascript nào.
Vì vậy, chuyển đổi một đối tượng javascript thành ký hiệu JSON,
và ngược lại, là rất đơn giản.
Đó là ký hiệu JSON là một, những gì chúng ta gọi là,
như một tự mô tả và rất dễ hiểu ký hiệu.
Trong định dạng ký hiệu đối tượng javascript,
dữ liệu được cấu trúc theo cách được chỉ định rất sạch sẽ.
Điều này được cấu trúc như là một tập hợp các cặp tên/giá trị,
và điều này được cấu trúc như một danh sách các giá trị có thứ tự.
Bạn có thể thấy một ví dụ về điều này ở phía bên phải ở đây,
chúng tôi đã thực sự sử dụng dữ liệu JSON này với ứng dụng góc cạnh của chúng tôi đã sớm hơn.
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 đó.
Và bạn cũng nhận ra rằng nó rất dễ dàng để có thể đối phó với dữ liệu này
trong âm thanh javascript của bạn, typescript được đánh bắt trong ứng dụng góc cạnh của bạn.
Với điều này, tôi hoàn thành một cái nhìn tổng quan nhanh chóng về các yếu tố cần thiết của mạng.
Bây giờ chúng tôi sẽ chuyển sang và tập thể dục nơi chúng tôi sẽ thiết lập một máy chủ thô sơ
đã được phục vụ lên một số dữ liệu mà chúng tôi có thể kết nối từ ứng dụng góc cạnh của chúng tôi
và sau đó trao đổi dữ liệu với một máy chủ.
Bây giờ, chúng tôi sẽ phát triển một máy chủ đầy đủ trong một trong những khóa học sau này,
mã Node JS và khóa học phát triển phía máy chủ
mà sẽ đến như một khóa học cuối cùng trong chuyên môn này.