W Internecie pełnym mylące i nieznane akronimy łatwo się pomylić. Jednym z akronimów internetowych, które mogłeś usłyszeć, ale nigdy nie czułeś się zainspirowany, jest „API”.
Co to jest API? API to akronim od interfejsu programowania aplikacji i jest nazwą zestawu procedur i protokołów, które znacznie ułatwiają tworzenie aplikacji.
Prostym sposobem spojrzenia na API jest mapa drogowa, która mówi elementy oprogramowania do interakcji. Bez użycia interfejsu API kod źródłowy może wyglądać jak pomieszany, mylący bałagan.
Jednak interfejsy API są złożone i wymagają więcej niż krótkiego podsumowania. W tym artykule omówimy, jak działają interfejsy API oraz jakie witryny i usługi z nich korzystają.
Co to jest interfejs API i jak to działa?
Teraz ustaliliśmy, że API to zestaw procedur, które wskazują oprogramowanie we właściwym kierunku, jak dokładnie to wszystko działa?
Najlepszym sposobem wyjaśnienia podstawowej funkcjonalności API jest zapewnienie rzeczywistej -światowy przykład. Usługi dostarczania żywności, takie jak GrubHub, są obecnie niezwykle popularne, dlatego omówmy, w jaki sposób może działać kod aplikacji mobilnych takich jak te.
In_content_1 all: [ 300x250] / dfp: [640x360]->Gdy szukasz restauracji lub produktu spożywczego w jednej z tych aplikacji, otrzymujesz trafne wyniki na podstawie słów kluczowych i lokalizacji. Po wybraniu wyniku wyświetlane są opcje produktów spożywczych, czas dostawy i inne opcje specyficzne dla restauracji.
Aby zaplanować dostawę, musi wystąpić połączenie między witryną dostarczającą a bazą danych - witryna stanowi frontend, a baza danych jest backendem . Baza danych przechowuje dane wszystkich tych restauracji, ich dostępność według lokalizacji, harmonogram operacji, menu i inne.
Interfejs API to połączenie między tą bazą danych a witryną lub aplikacją, która prezentuje dane. Ważne jest, aby interfejs API był obecny w celu utworzenia tego połączenia, zamiast używania danych zakodowanych na stałe, głównie ze względu na popularność integracji innych firm.
Na przykład, byłoby korzystne dla strony internetowej, gdyby agregatorzy zewnętrzni byli w stanie wyświetlić listę i zorganizować wszystkie restauracje i przedmioty, które są dostępne, prawda? Bez interfejsu API nie byłoby to możliwe bez korzystania z nieefektywnych technik skrobania stron internetowych.
Interfejs API jest interfejsem odpowiedzialnym za dostarczanie danych z bazy danych do aplikacji, czy to strony internetowej, aplikacji mobilnej, albo coś innego. Interfejsy API stały się standardowym sposobem uzyskiwania dostępu do danych aplikacji i komunikowania się z nimi w Internecie, a każda ważna witryna internetowa lub usługa zależna od łączności stron trzecich ma ogromne zalety, ponieważ ją udostępnia.
Jakie są rodzaje interfejsów API?
Istnieje wiele różnych typów protokołów API, ale trzy najpopularniejsze to SOAP (Simple Object Access Protocol), REST (Representational State Transfer) i RPC (Remote Procedura Call).
API SOAP
SOAP został wprowadzony pod koniec lat 90. i umożliwił aplikacjom współdzielenie zasobów w prosty sposób za pomocą połączeń sieciowych. SOAP opiera się na standardowych protokołach, takich jak HTTP i SMTP, które umożliwiają korzystanie z niego praktycznie w każdym środowisku ze względu na popularność takich protokołów.
Jego główną zaletą jest to, że jest szeroko stosowany i ugruntowany. Jeśli się nie zepsuł, nie naprawiaj go.
Interfejsy API REST
REST został wprowadzony w 2000 roku przez Roy Fieldinga. Jego bezpośrednim celem było działanie w odpowiedzi na wiele problemów, które powstały w wyniku powszechnego przyjęcia SOAP.
Podobnie jak SOAP, REST opiera się na HTTP do przesyłania informacji między aplikacjami. Jedną z głównych różnic, które odróżniają go od SOAP, który wymaga przesyłania danych za pomocą formatu danych XML, jest to, że obsługuje JSON. JSON to format danych, który według wielu jest łatwiejszy do odczytu i zapisu. Ponadto interfejsy API REST mogą buforować dane, co pozwala na znacznie lepszą wydajność.
REST stanowi obecnie ponad 80% wszystkich interfejsów API, zgodnie z raportem Cloud Elements z 2017 r.
Interfejsy API RPC
Interfejsy API RPC są dostępne w wielu odmianach, ale jak dowiedzieliśmy się z interfejsów API REST, JSON jest bardzo popularnym formatem danych, więc JSON-RPC jest najbardziej popularny.
JSON-RPC to protokół, który najlepiej nadaje się dla minimalistów i użytkowników, którzy polegają na prostocie swojego API. Jego zakres jest znacznie węższy w porównaniu do SOAP i REST, a jego elastyczność i zestaw poleceń jest bardzo ograniczony - ale dla niektórych programistów mniej znaczy więcej.
Istnieją inne typy API oparte na RPC, takie jak jak gRPC, ale JSON-RPC jest tym, do którego należy priorytet, jeśli priorytetem jest prostota implementacji.
Kto korzysta z interfejsów API?
Programiści , czy to frontend, czy backend, powinien mieć doświadczenie w pracy z interfejsami API. Jeśli chodzi o strony internetowe lub usługi sieciowe, praktycznie wszyscy główni gracze mają dostęp do API - najbardziej oczywistym jest Windows.
Ponieważ Microsoft Windows jest najpopularniejszym systemem operacyjnym na świecie, naturalne jest, że twórcy aplikacji będą potrzebować zestawu wskazówek za sposób interakcji z jego interfejsem użytkownika. Bez dostępu do Windows API programowanie aplikacji, która w dużym stopniu opiera się na interakcji z systemem operacyjnym, byłoby poważnym problemem.
Istnieją tysiące interfejsów API, niektóre są bezpłatne, a niektóre płatny. Oto tylko kilka przykładów, na które warto zwrócić uwagę:
Interfejsy API są jednym z kluczowych łączników niektórych największych i najważniejszych witryn i aplikacji w sieci. Choć przeciętny użytkownik może nie widzieć korzyści, jakie zapewniają interfejsy API, są darem niebios dla programistów i usług internetowych.