Oznacza to, że umożliwiasz dostęp do obiektów za pomocą pewnych środków. W twoich przykładach możesz pozwolić użytkownikom tworzyć, odczytywać, aktualizować lub usuwać obiekty (zwykle w skrócie CRUD) przy użyciu protokołu HTTP w określony sposób do interakcji z twoimi obiektami ( API ).
Ten interfejs API może być zgodny z zestawem reguł - np. Interfejsy API RESTful używają czasowników HTTP do wykonywania niektórych działań na obiektach i są zgodne z niektórymi zasadami określającymi, w jaki sposób zasoby powinny być identyfikowane / reprezentowane i jak należy nimi manipulować za pomocą tych reprezentacji.
W kontekście aplikacji internetowej załóżmy, że masz wpisy blogu w bazie danych. Chcesz, aby użytkownicy Twojej aplikacji mogli coś zrobić z tymi postami. Nie muszą koniecznie korzystać z Twojej witryny , ale być może mogą użyć własnej aplikacji, która łączyłaby się z Twoją aplikacją (np. Program do czytania blogów).
Jako właściciel aplikacji możesz zdefiniować interfejs, przez który można uzyskać dostęp do aplikacji. Na przykład możesz chcieć dodać opcję umożliwiającą niektórym użytkownikom czytanie lub pisanie postów na blogu. Interfejs może wyglądać mniej więcej tak (na przykład bardziej złożonego API, zobacz definicję API Twittera ):
- Jeśli
GET /posts/{number} HTTP/1.1
aplikacja WWW zażąda takiego znaku, zapewnisz reprezentację swojego obiektu pocztowego z identyfikatorem {number}
w predefiniowanym formacie
Pamiętaj, że nie udostępniasz rzeczywistego obiektu bazy danych ani obiektu aplikacji. Jesteś zapewniając reprezentację swojego obiektu
- Jeśli w aplikacji internetowej znajduje się
POST /posts HTTP/1.1
znak „a” title={text1}&body={text2}
, utworzysz nowy obiekt posta, {text1}
który będzie zawierał {text2}
jego treść, i zwróci wartość id nowo utworzonego wpisu
Ponownie pozwalasz użytkownikowi manipulować reprezentacjami twoich obiektów. Użytkownik nie musi wiedzieć, jak faktycznie wyglądają Twoje obiekty (co jest abstrakcyjne dla interfejsu użytkownika).
Ujawnienie obiektu oznacza udostępnienie użytkownikowi interfejsu umożliwiającego dostęp do obiektów i manipulowanie nimi. Jeśli interfejs spełniał pewne dodatkowe predefiniowane warunki dotyczące reprezentacji obiektu i stanów aplikacji, która udostępnia jego obiekty, wówczas interfejs ten jest nazywany interfejsem API REST (lub RESTful).