Nó có nghĩa là bạn cho phép các đối tượng được truy cập thông qua một số phương tiện. Trong ví dụ của bạn, bạn có thể cho phép người dùng tạo, đọc, cập nhật hoặc xóa các đối tượng (thường được viết tắt là CRUD) bằng giao thức HTTP thông qua một số cách được xác định trước để tương tác với các đối tượng của bạn ( API ).
API đó có thể tuân thủ một tập hợp các quy tắc - ví dụ: API RESTful sử dụng động từ HTTP để thực hiện một số hành động trên các đối tượng và chúng tuân thủ một số nguyên tắc cho biết cách xác định / đại diện tài nguyên và cách chúng được xử lý thông qua các biểu diễn đó.
Trong ngữ cảnh của một ứng dụng web, giả sử bạn có các bài đăng blog được lưu trữ trong cơ sở dữ liệu của bạn. Bạn muốn người dùng ứng dụng của bạn có thể làm điều gì đó với những bài đăng đó. Họ không nhất thiết phải sử dụng trang web của bạn , nhưng có lẽ có thể sử dụng ứng dụng của riêng họ sẽ kết nối với ứng dụng của bạn (ví dụ: chương trình đọc blog).
Là chủ sở hữu của ứng dụng của bạn, bạn có thể xác định giao diện mà qua đó ứng dụng của bạn có thể được truy cập. Ví dụ: bạn có thể muốn thêm tùy chọn cho một số người dùng đọc hoặc viết bài đăng trên blog. Giao diện có thể trông giống như thế này (ví dụ về API phức tạp hơn, xem định nghĩa API của Twitter ):
- Nếu một
GET /posts/{number} HTTP/1.1
yêu cầu từ ứng dụng web của bạn, bạn sẽ cung cấp một đại diện cho đối tượng bài đăng của bạn với một id {number}
theo định dạng được xác định trước
Lưu ý rằng bạn không cung cấp một đối tượng cơ sở dữ liệu thực tế, cũng như đối tượng ứng dụng của bạn. Bạn đang cung cấp một đại diện của đối tượng của bạn
- Nếu a
POST /posts HTTP/1.1
với a title={text1}&body={text2}
được đăng lên ứng dụng web của bạn, bạn sẽ tạo một đối tượng bài đăng mới có tiêu đề {text1}
sẽ chứa {text2}
cho phần thân của nó và sẽ trả về giá trị id của bài đăng mới được tạo
Một lần nữa, bạn đang cho phép người dùng thao tác biểu diễn các đối tượng của bạn. Người dùng không cần phải biết các đối tượng của bạn thực sự trông như thế nào (được trừu tượng hóa bởi giao diện từ người dùng).
Phơi bày đối tượng có nghĩa là cung cấp cho người dùng giao diện để truy cập và thao tác với các đối tượng của bạn. Nếu giao diện đó thỏa mãn một số điều kiện được xác định trước liên quan đến các biểu diễn của đối tượng và trạng thái của ứng dụng phơi bày các đối tượng của nó, thì giao diện đó được gọi là API REST (hoặc RESTful).