HDG wyjaśnia: Co to jest interfejs API?


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ę:

  • Interfejs API programisty Google Play :zadania związane z publikowaniem i zarządzaniem aplikacjami związane z Google Play
  • Interfejsy API Skyscanner :oparte na podróży interfejsy API dotyczące lotów, wynajmu samochodów i nie tylko
  • Twilio API :umożliwia programowe wysyłanie i odbieranie połączeń telefonicznych
  • Discord API :umożliwia użytkownikom tworzenie botów, które sprawiają, że Discord jest usługą przesyłania wiadomości dziś
  • Interfejs API IPinfo :adres IP w locie i dane geolokalizacyjne Twojej witryny lub aplikacji
  • 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.

    Powiązane posty:


    31.01.2020