In einem mit verwirrende und unbekannte Akronyme gefüllten Internet kann es leicht zu Verwirrung kommen. Ein Webakronym, das Sie vielleicht gehört haben, zu dem Sie sich aber nie inspiriert fühlten, ist „API“.
Was ist eine API? API ist eine Abkürzung für Application Programming Interfaceund eine Bezeichnung für eine Reihe von Routinen und Protokollen, die das Erstellen von Softwareanwendungen erheblich vereinfachen.
Eine einfache Möglichkeit, eine API zu betrachten, ist eine Roadmap, die Aufschluss gibt die Komponenten einer Software, wie man interagiert. Ohne die Verwendung einer API könnte der Quellcode wie ein durcheinandergebrachtes, verwirrendes Durcheinander aussehen.
APIs sind jedoch komplex und erfordern mehr als eine kurze Zusammenfassung. In diesem Artikel gehen wir kurz darauf ein, wie APIs funktionieren und welche Websites und Dienste sie verwenden.
Was ist eine API und wie funktioniert sie?
Jetzt Wir haben festgestellt, dass eine API eine Reihe von Routinen ist, die Software in die richtige Richtung lenken. Wie genau funktioniert das?
Die beste Methode, um die Kernfunktionalität einer API zu erklären, besteht darin, eine echte bereitzustellen -welt beispiel. Lieferservices für Lebensmittel wie GrubHub sind derzeit unglaublich beliebt. Lassen Sie uns nun erläutern, wie der Code hinter solchen mobilen Apps funktionieren könnte.
In_content_1 all: [ 300 x 250] / dfp: [640 x 360]->Wenn Sie in einer dieser Apps nach einem Restaurant oder Lebensmittel suchen, erhalten Sie relevante Ergebnisse basierend auf Ihren Keywords und Ihrem Standort. Bei der Auswahl eines Ergebnisses werden Ihnen Optionen für Lebensmittel, Lieferzeiten und weitere restaurantspezifische Optionen angezeigt.
Um Ihre Zustellung zu planen, muss eine Verbindung zwischen der Zustellungswebsite und einer Datenbank hergestellt werden - die Website ist das Frontend und die Datenbank das Backend . In der Datenbank werden die Daten für alle diese Restaurants, ihre Verfügbarkeit nach Standort, Betriebszeitplan, Menüs usw. gespeichert.
Die API ist die Verbindung zwischen dieser Datenbank und der Website oder App, die ihre präsentiert Daten. Es ist wichtig, dass eine API vorhanden ist, um diese Verbindung zu erstellen, anstatt hartcodierte Daten zu verwenden. Dies liegt hauptsächlich an der Beliebtheit von Integrationen von Drittanbietern.
Zum Beispiel wäre es für eine Website von Vorteil, wenn Aggregatoren von Drittanbietern in der Lage wären, alle verfügbaren Restaurants und Artikel aufzulisten und zu organisieren, oder? Ohne eine API wäre dies ohne den Einsatz ineffizienter Web-Scraping-Techniken nicht möglich.
Die API ist die Schnittstelle, die für die Bereitstellung der Daten aus der Datenbank an die Anwendung verantwortlich ist, sei es eine Website, eine mobile App, oder irgendetwas anderes. APIs sind zum Standard für den Zugriff auf und die Kommunikation von Anwendungsdaten über das Web geworden, und jede wichtige Website oder jeder wichtige Dienst, der von der Konnektivität eines Drittanbieters abhängt, profitiert erheblich von der Bereitstellung einer API.
Welche Arten von APIs gibt es?
Es gibt verschiedene Arten von API-Protokollen. Die drei beliebtesten sind jedoch SOAP (Simple Object Access Protocol), REST (Representational State Transfer) und RPC (Remote Procedure) Call).
SOAP-APIs
SOAP wurde erstmals Ende der neunziger Jahre eingeführt und ermöglichte es Anwendungen, Ressourcen auf einfache Weise über Netzwerkverbindungen gemeinsam zu nutzen. SOAP stützt sich auf Standardprotokolle wie HTTP und SMTP, die es aufgrund der Popularität solcher Protokolle ermöglichen, in praktisch jeder Umgebung verwendet zu werden.
Seine Hauptstärke besteht darin, dass es weit verbreitet und etabliert ist. Wenn es nicht kaputt ist, beheben Sie es nicht.
REST-APIs
REST wurde 2000 von Roy Fielding eingeführt. Das unmittelbare Ziel bestand darin, als Antwort auf viele der Probleme zu fungieren, die durch die weit verbreitete Einführung von SOAP verursacht wurden.
Ähnlich wie SOAP stützt sich REST auf HTTP, um Informationen zwischen Anwendungen zu übertragen. Ein wesentlicher Unterschied zu SOAP, bei dem Daten über das XML-Datenformat übertragen werden müssen, besteht jedoch in der Unterstützung von JSON. JSON ist ein Datenformat, von dem sich viele einig sind, dass es einfacher zu lesen und zu schreiben ist. Darüber hinaus können REST-APIs Daten zwischenspeichern, was eine deutlich bessere Leistung ermöglicht.
Laut einem Bericht von Cloud Elements aus dem Jahr 2017 machen REST nun mehr als 80% aller APIs aus.
RPC-APIs
RPC-APIs gibt es in vielen Varianten. Wie wir jedoch aus REST-APIs gelernt haben, ist JSON ein sehr beliebtes Datenformat, weshalb JSON-RPC das beliebteste ist.
>JSON-RPC ist ein Protokoll, das sich am besten für Minimalisten und Benutzer eignet, die auf die Unkompliziertheit ihrer API vertrauen. Der Umfang ist im Vergleich zu SOAP und REST viel enger und die Flexibilität und Befehlssätze sind sehr begrenzt. Für einige Entwickler ist weniger jedoch mehr.
Es gibt auch andere RPC-basierte API-Typen, z Wie gRPC, aber JSON-RPC ist die erste Wahl, wenn Ihre Priorität in der Einfachheit der Implementierung liegt.
Wer verwendet APIs?
Entwickler jeglicher Art Ob Frontend oder Backend, sollte Erfahrung im Umgang mit APIs haben. In Bezug auf Websites oder Webdienste steht praktisch allen wichtigen Playern eine API zur Verfügung - die offensichtlichste ist Windows.
Da Microsoft Windows das beliebteste Betriebssystem der Welt ist, ist es nur natürlich, dass Anwendungsentwickler eine Reihe von Richtlinien benötigen für die Interaktion mit der Benutzeroberfläche. Ohne Zugriff auf die Windows API wäre die Programmierung einer Anwendung, die stark auf die Interaktion mit dem Betriebssystem angewiesen ist, ein großes Problem.
Es gibt Tausende von APIs, einige davon kostenlos und andere bezahlt. Hier nur einige Beispiele, die es wert sind, untersucht zu werden:
APIs sind einer der wichtigsten Konnektoren hinter einigen der größten und wichtigsten Websites und Anwendungen des Webs. Der Durchschnittsbenutzer kann möglicherweise nicht erkennen, welche Vorteile APIs bieten, doch sie sind für Entwickler und Webservices ein Kinderspiel.