API i usługa sieciowa

Anonim

API vs usługa sieciowa

API i usługa sieci Web służą jako środek komunikacji. Jedyną różnicą jest to, że usługa sieciowa ułatwia interakcję między dwoma komputerami w sieci. Interfejs API działa jako interfejs między dwiema różnymi aplikacjami, dzięki czemu mogą się ze sobą komunikować. 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 interfejs był przedstawiony w formacie możliwym do przetworzenia przez maszynę, zwykle określanym w języku Web Service Description Language (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 w celu zainicjowania interakcji pomiędzy aplikacjami. Na przykład wywołania systemowe są wywoływane za pomocą przerwań przez interfejs API jądra Linux.

Interfejs API dokładnie definiuje metody dla jednego programu do interakcji z drugim. Kiedy działanie to polega na wysyłaniu danych przez sieć, pojawiają się usługi sieciowe. API zazwyczaj obejmuje wywoływanie funkcji z poziomu oprogramowania.

W przypadku aplikacji internetowych używany interfejs API jest oparty na Internecie. Aplikacje komputerowe, takie jak arkusze kalkulacyjne i dokumenty tekstowe, korzystają z interfejsów API opartych na VBA i COM, które nie obejmują usług sieci Web. Aplikacja serwerowa, taka jak Joomla, może używać API opartego na PHP, który nie wymaga usługi sieciowej.

Usługa sieciowa to tylko API owinięte w HTTP. Interfejs API nie zawsze musi być oparty na sieci. Interfejs API składa się z pełnego zestawu reguł i specyfikacji oprogramowania, które należy wykonać w celu ułatwienia interakcji. Usługa sieci Web może nie zawierać pełnego zestawu specyfikacji, a czasami może nie być w stanie wykonać wszystkich zadań, które mogą być możliwe z kompletnego interfejsu API.

Interfejsy API mogą być ujawnione na wiele sposobów, które obejmują: 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 używana w sieci Web usługa ujawniania interfejsu API odbywa się wyłącznie za pośrednictwem sieci.

Streszczenie:

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

2. Usługi sieci Web mogą nie wykonywać wszystkich operacji wykonywanych przez API.

3. Usługa internetowa wykorzystuje tylko trzy style użycia: SOAP, REST i XML-RPC dla

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

4. Usługa internetowa zawsze potrzebuje sieci do działania, podczas gdy API nie potrzebuje

sieć dla jego działania.

5. Interfejs API ułatwia bezpośrednie połączenie z aplikacją, podczas gdy usługa sieci Web jest