To właściwie bardzo szerokie pytanie. W najbardziej podstawowym znaczeniu interfejs API sieci Web działa, gdy klient (np. Przeglądarka internetowa) wysyła jakieś żądanie HTTP do serwera sieci Web. Serwer analizuje to żądanie, aby dowiedzieć się, czego chce użytkownik, a następnie zwraca dane w jakimś formacie (np. Stronie), który następnie sprawdza, aby uzyskać to, czego chce. Są to jedyne rzeczy, które mają wspólne interfejsy API sieci Web; Zdaję sobie sprawę, że to tak naprawdę nie odpowiada na twoje pytanie, ale chciałem podać powód, dla którego pytanie jest tak szerokie.
Istnieje wiele sposobów, w jakie klient może sformatować swoje żądanie lub serwer może sformatować swoją odpowiedź, więc aby którekolwiek z nich miało sens, klient i serwer muszą uzgodnić kilka podstawowych zasad. Ogólnie rzecz biorąc, obecnie istnieją dwa bardzo ogólne style, które przyzwyczajają się do tego rodzaju rzeczy.
Zdalne wywołanie procedury (RPC)
W interfejsie API w stylu RPC zwykle istnieje tylko jeden adres URL dla całego interfejsu API. Nazywasz to POST, jakimś dokumentem zawierającym informacje o tym, co chcesz zrobić, a serwer zwraca dokument zawierający to, co chcesz. Ogólnie rzecz biorąc, dokument żądania ma zazwyczaj nazwę funkcji i kilka argumentów.
Niektóre standardy dla tego stylu API obejmują XML-RPC i SOAP. Standardy te próbują utworzyć format, którego można użyć do opisania wywoływanych funkcji, a nawet do opisania całego interfejsu API.
REpresentational State Transfer (REST)
W interfejsie API w stylu REST nie ma tak wiele adresu URL interfejsu API, jak przestrzeń nazw : serwer lub folder wewnątrz serwera, na którym znajduje się wiele różnych obiektów, a każdy adres URL w tej przestrzeni nazw staje się częścią interfejsu API. Zamiast opowiadać serwer, który chcesz użyć API, URL informuje serwer, co chcesz korzystać z interfejsu API na . Następnie używasz metody HTTP i ewentualnie treści żądania, aby wyjaśnić, co chcesz zrobić z tym obiektem: GET (pobierz coś, co już istnieje), POST (stwórz coś nowego), PUT (zamień coś, co już tam jest) lub USUŃ (pozbądź się czegoś, co już tam jest). Istnieje kilka innych czasowników, których możesz użyć, ale są one zdecydowanie najczęstsze.
Do tej pory nie wspomniałem o standardowych formatach REST. Teoretycznie możesz użyć dowolnego formatu. Protokół HTTP przewiduje już powiedzenie, co chcesz zrobić i do czego chcesz to zrobić, więc format treści żądania może być prawie dowolny: pewna reprezentacja obiektu, który chcesz utworzyć lub zastąpić. Ale w praktyce autorzy REST i tak zgadzają się na format, ponieważ trudno byłoby zrozumieć każdy możliwy format.