Khóa học sụp đổ 101
10 Mô-đun
5 Tuần

Giới thiệu API REST

Nhấn vào đây để sao chép

Thông tin chung về REST API và các nguyên tắc của nó


Mô-đun đầu tiên kết thúc với việc bạn tạo một yêu cầu HTTP, gửi yêu cầu đó và nhận phản hồi.

Chúng tôi sẽ làm điều này nhiều lần nữa trong tương lai. Chúng tôi sẽ gửi yêu cầu đến máy chủ của bên thứ ba. Chúng tôi sẽ làm cho các ứng dụng tự chấp nhận các yêu cầu đó và trả lại phản hồi. Chúng tôi sẽ tạo logic phức tạp để xử lý các yêu cầu.

Do đó, sẽ rất tốt nếu bạn nghiên cứu kỹ lưỡng mọi thứ liên quan đến những yêu cầu này, để phân tích chúng một cách chi tiết. Vì vậy, bạn không thể chỉ sao chép yêu cầu ở đâu đó và lặp lại nó, mà hãy thực sự tìm ra cách hoạt động của nó.

Đây là những gì chúng ta sẽ làm trong mô-đun thứ hai. Đi nào!

Thông tin chung

Hãy bắt đầu với thông tin chung.

Nếu bạn đã làm bài tập về nhà trong mô-đun đầu tiên và nghiên cứu tài liệu, bạn sẽ chú ý đến từ viết tắt API. Trên thực tế, tài liệu API là điều đầu tiên mà các nhà phát triển nên nghiên cứu nếu họ muốn hiểu sự tương tác với một số dịch vụ hoặc ứng dụng trên mạng.

API

API - Giao diện lập trình ứng dụng . Đây là mô tả về cách thức mà máy khách và máy chủ có thể giao tiếp với nhau. Chúng tôi mở tài liệu API và tìm hiểu từ đó cách lấy dữ liệu cần thiết từ máy chủ.

Chúng tôi luôn muốn sự tương tác này trở nên đơn giản và dễ hiểu. Điều này đơn giản hóa nhiệm vụ cho cả nhà phát triển (không cần phải phát minh lại bánh xe khi thiết kế một dịch vụ mới) và người dùng (một dịch vụ sẽ dễ học hơn nhiều nếu nó hoạt động trên nguyên tắc giống như các dịch vụ quen thuộc trước đây). Và ở đây, đáng để ghi nhớ một thuật ngữ mới - REST.

LÊN ĐỈNH

REST - từ viết tắt của Chuyển trạng thái đại diện . Nghe có vẻ không rõ ràng lắm, nhưng nói một cách đơn giản, REST là một kiểu tương tác (trao đổi thông tin) giữa máy khách và máy chủ.

Đây không phải là một bộ quy tắc và yêu cầu cứng nhắc. REST không bắt buộc sử dụng bất kỳ ngôn ngữ lập trình cụ thể nào, cũng như không ràng buộc bằng các nguyên tắc nghiêm ngặt. REST được gọi là một kiểu kiến trúc và nó xác định 6 nguyên tắc mà một kiến trúc hệ thống phải tuân thủ.

Theo đó, một API được phát triển có tính đến các nguyên tắc của REST được gọi là API REST và bản thân các ứng dụng được gọi là RESTful

Chúng tôi sẽ chỉ tạo các ứng dụng RESTful như vậy, vì vậy cần thảo luận về các nguyên tắc mà chúng sẽ tuân thủ ngay lập tức.

nguyên tắc NGHỈ NGƠI

Mô hình Client-Server . Nguyên tắc xác định sự tách biệt giữa máy khách và máy chủ, sự khác biệt về nhu cầu của họ. Khách hàng không phải lo lắng về cách dữ liệu được lưu trữ, điều chính yếu là nó được phát hành theo yêu cầu. Đổi lại, máy chủ không quan tâm máy khách sẽ làm gì với dữ liệu này, cách xử lý và hiển thị thêm. Điều này cho phép chúng phát triển độc lập với nhau và cải thiện khả năng mở rộng của hệ thống.

Không quốc tịch . Nguyên tắc này có nghĩa là máy chủ không nên "nghĩ ra" phản hồi dựa trên kinh nghiệm trước đó với máy khách này. Bất kỳ yêu cầu nào được thực hiện theo cách nó chứa tất cả thông tin cần thiết để xử lý, bất kể các yêu cầu trước đó.

Bộ nhớ đệm . Để giảm thiểu dữ liệu truyền đi, có một cơ chế lưu trữ. Ví dụ: nếu một biểu trưng được hiển thị trên một số trang, thì việc yêu cầu nó từ máy chủ mỗi lần là vô nghĩa. Nó không thay đổi thường xuyên, chỉ cần lấy một lần và lưu trên máy tính của khách hàng, trong bộ nhớ cache là đủ. Nhưng nếu chúng ta cần lấy thông tin về tốc độ hiện tại của ô tô, thì bộ đệm sẽ không giúp được gì. Nguyên tắc này xác định rằng dữ liệu được truyền bởi máy chủ có được chỉ định là có thể lưu vào bộ đệm ẩn hay không.

Giao diện thống nhất . Nguyên tắc xác định một định dạng duy nhất của tương tác máy khách-máy chủ. Cấu trúc của tất cả các yêu cầu phải giống nhau. Dữ liệu phải được gửi ở cùng một dạng, bất kể ai yêu cầu.

Hệ thống lớp . Máy khách và máy chủ không nhất thiết phải giao tiếp trực tiếp. Việc truyền dữ liệu có thể đi qua một số nút trung gian. Trong trường hợp này, hệ thống được thiết kế sao cho cả máy khách và máy chủ đều không biết liệu họ đang tương tác với ứng dụng cuối cùng hay một nút trung gian. Điều này cho phép bạn cân bằng tải trên máy chủ, tăng khả năng mở rộng.

Mã theo yêu cầu (tùy chọn) . Nguyên tắc duy nhất không bắt buộc. Theo đó, máy khách có thể mở rộng chức năng của mình bằng cách tải xuống mã thực thi từ máy chủ (ví dụ: tập lệnh). Trong trường hợp này, mã chỉ nên được thực thi theo yêu cầu.

Was this article helpful?
Vẫn đang tìm kiếm một câu trả lời?
Tham gia vào cộng đồng