Różnica między interfejsem API a usługą internetową

API a usługa sieciowa

Interfejs API i usługa sieci Web służą jako środek komunikacji. Jedyna różnica polega na tym, że usługa internetowa ułatwia interakcję między dwoma komputerami w sieci. Interfejs API działa jako interfejs między dwiema różnymi aplikacjami, aby mogły się ze sobą komunikować. Interfejs API to metoda, za pomocą której dostawcy zewnętrzni mogą pisać programy, które łatwo łączą się z innymi programami. Usługa sieci Web została zaprojektowana w taki sposób, aby miała interfejs przedstawiony w formacie przetwarzalnym maszynowo, zwykle określonym w języku opisu usługi sieci Web (WSDL). Zazwyczaj „HTTP” jest najczęściej używanym protokołem do komunikacji. Usługa sieci Web używa również SOAP, REST i XML-RPC jako środka komunikacji. API może wykorzystywać dowolne środki komunikacji do inicjowania interakcji między aplikacjami. Na przykład wywołania systemowe są wywoływane przy użyciu przerwań przez interfejs API jądra systemu Linux.

Interfejs API dokładnie definiuje metody interakcji jednego programu z drugim. Gdy ta czynność obejmuje wysyłanie danych przez sieć, pojawiają się usługi sieciowe. Interfejs API ogólnie obejmuje wywoływanie funkcji z poziomu oprogramowania.

W przypadku aplikacji internetowych używany interfejs API jest oparty na sieci WWW. Aplikacje komputerowe, takie jak arkusze kalkulacyjne i dokumenty tekstowe, używają interfejsów API opartych na języku VBA i COM, które nie wymagają usług sieciowych. Aplikacja serwera, taka jak Joomla, może korzystać z interfejsu API opartego na PHP obecnego na serwerze, który nie wymaga usługi sieci Web.

Usługa internetowa jest jedynie interfejsem API opakowanym w HTTP. Interfejs API nie zawsze musi być oparty na sieci. Interfejs API składa się z pełnego zestawu zasad i specyfikacji, których należy przestrzegać w celu ułatwienia interakcji. Usługa sieci Web może nie zawierać pełnego zestawu specyfikacji i czasami może nie być w stanie wykonać wszystkich zadań, które mogą być możliwe z poziomu pełnego interfejsu API.

Interfejsy API można ujawnić na wiele sposobów, w tym: obiekty COM, pliki DLL i .H w języku programowania C / C ++, pliki JAR lub RMI w Javie, XML przez HTTP, JSON przez HTTP itp. Metoda stosowana przez sieć usługa ujawnienia API odbywa się wyłącznie przez sieć.

Streszczenie:

1. Wszystkie usługi sieciowe są interfejsami API, ale wszystkie interfejsy API nie są usługami internetowymi.

2. Usługi sieci Web mogą nie wykonywać wszystkich operacji, które wykonałby interfejs API.

3. Usługa sieci Web używa tylko trzech stylów użytkowania: SOAP, REST i XML-RPC dla

komunikacja, podczas gdy API może wykorzystywać dowolny styl komunikacji.

4. Usługa sieci Web zawsze potrzebuje sieci do działania, a interfejs API nie

sieć do działania.

5. Interfejs API ułatwia bezpośredni interfejs z aplikacją, podczas gdy usługa internetowa to