30. Juni 2022
Was versteht man unter einer API und welche Richtlinien gibt es für das erfolgreiche Erstellen einer API? Eine Anwendungsprogrammierschnittstelle (API) ist eine Gruppe von Programmierfunktionen, Tools und Protokollen, mit denen externe Anwendungen entweder auf die Funktionen oder die Daten einer Plattform, eines Betriebssystems, einer Anwendung oder eines Service zugreifen und mit diesen interagieren können. Effektive APIs öffnen die Tür zu mehr Datenaustausch und Zusammenarbeit und schaffen ein Ökosystem, in dem verschiedene Softwareteile miteinander kommunizieren können, um Geschäftsfunktionen bereitzustellen. APIs sind eine Kernkomponente moderner Anwendungen und Cloud-nativer, Microservices-basierter Architekturen. Sie erstellen die Hauptkanäle für verschiedene Services, um miteinander zu kommunizieren und moderne Erlebnisse zu bieten.
Das Entwerfen, Entwickeln und Verteilen erfolgreicher APIs erfordert die Nutzung einer Reihe von Best Practices. Durch die Einhaltung dieser Best Practices gewährleistet der Prozess einen sicheren Zugriff und eine einfache Verwendung durch Entwickler und Anwendungen. Die folgenden Best Practices umfassen:
Die Erstellung einer API hängt weitgehend von bestimmten Faktoren ab, die sowohl die Quelle als auch die externen Anwendungen betreffen, die mit dieser Quelle verbunden sind. Im Folgenden finden Sie einige Fragen zur Planung Ihres API-Entwicklungsprozesses.
Was sind Ihre Ziele?
Für jede Art von Projekt ist der beste Ort, um zu beginnen, immer das große Ganze: Ihre Ziele zu definieren und zu verstehen. Der Zweck Ihrer API ist das leitende Licht auf dieses Projekt. Welche Informationen werden über die API ausgetauscht? Wie wird es verwendet oder präsentiert? Weitere Elemente, die berücksichtigt werden müssen, sind das Verständnis der Zielgruppe Ihrer Anwendung und ihrer Anforderungen.
Was sind Ihre Einschränkungen?
Die Kehrseite Ihrer Projektziele sind Projektbeschränkungen. Die Anwendung eines praktischen Objektivs auf die Entwicklung ist ein notwendiger Schritt, daher sollten Sie ein gutes Verständnis Ihrer eigenen Ressourcen- und Zeitplanbeschränkungen haben. Ein weiterer zu berücksichtigender Faktor: Technische Einschränkungen wie Sicherheitsbedenken, Auswirkungen auf Hardwareressourcen und Performanceanforderungen sollten ein Problem darstellen.
Was ist Ihre Architektur?
Wenn es darum geht, eine API von Grund auf neu zu entwerfen, haben Entwickler zahlreiche Ausgangspunkte zur Auswahl. Python, Java, JavaScript, C# und andere Sprachen sind alle in der Lage, Ihre API zu entwickeln. Weitere Faktoren, die in Ihre Designüberlegungen integriert werden können, sind Verwendbarkeit, Skalierbarkeit (gekoppelt mit den Ressourcenanforderungen) und Sicherheit. Diese letzte ist besonders wichtig, da APIs als Brücken zwischen Anwendungen fungieren. Dabei müssen beide Seiten ihre Daten ordnungsgemäß schützen. Eine API mit Sicherheitslücken ist offen für Exploits wie Code-Injection und Datenexposition.
Mit diesen Big-Picture-Fragen können Richtlinien definiert werden und Entwickler können tiefer in den Prozess der Erstellung einer API von Grund auf eintauchen.
Eine der wichtigsten Entscheidungen beim Entwerfen einer API hängt davon ab, wie die Anwendung auf Webservices zugreift. Simple Software Architecture Styles Object Access Protocol (SOAP) und Representational State Transfer (REST) können beide effektive Pfade für das Entwerfen einer API sein. Beide bieten Vor- und Nachteile, und diejenige, die am besten für ein Projekt funktioniert, hängt von der Situation und dem Kontext der Nutzung ab. Im Allgemeinen unterstützen Webservices entweder SOAP oder REST. Daher kann die Entscheidung über den Webservice für Ihre API sehr gut dadurch definiert werden, ob SOAP oder REST für Ihre Ziele besser funktioniert.
Was ist SOAP?
SOAP ist ein XML-basiertes Protokoll, das ursprünglich von Microsoft entwickelt wurde. SOAP basiert auf einer Reihe von Regeln und erstellt Standards in Messaging, die zahlreiche Erweiterungen (WS-Koordination und WS-Sicherheit), Automatisierung und integrierte Fehlerbehandlung unterstützt haben. SOAP funktioniert am besten in einer verteilten Umgebung, aber seine Abhängigkeit von der XML-Struktur kann den Code zu komplex machen.
Was ist REST?
REST wurde als einfachere, leichtgewichtigere Alternative zu SOAP entwickelt, die auf Punkt-zu-Punkt-Ebene funktioniert. Als Softwarearchitekturstil, der speziell für eine effiziente Skalierbarkeit entwickelt wurde, bietet REST eine Reihe von standardisierten Einschränkungen, die die Verarbeitung minimieren und gleichzeitig Flexibilität bieten. Die schnelle Antwort von REST minimiert die Latenz über verschiedene Ausgabenachrichtenformate hinweg, die von Anwendungen verwendet werden, einschließlich JSON und CSV.
Soll REST oder SOAP für Ihre API verwendet werden?
Was ist der beste Standard für Ihre Anwendung? Das hängt von Ihren Bedürfnissen ab. In den meisten Fällen, in denen die Anwendung einfache, benutzerorientierte Nachrichten wie freigegebene Medien oder Ausgaben aus einer Datenbankabfrage aktiviert, sind REST-APIs ideal. SOAP hat eine steilere Lern- und Nutzungskurve, aber diese inhärente Komplexität macht es in der Lage, kompliziertere Transaktionen wie sichere Zahlungen zu verarbeiten.
Die Muttern und Schrauben beim Aufbau einer API variieren je nach den vom Entwicklungsteam gewählten Tools. Mit den API-Lösungen von Oracle Cloud Infrastructure (OCI) können Sie APIs einfach mit einem vollständigen Toolkit entwerfen und entwickeln, das ein schnelles Prototyping und eine schnelle Validierung basierend auf OpenAPI-Spezifikationen ermöglicht. Mit OCI können Benutzer entweder auf API Blueprint oder Swagger zugreifen, um ihre APIs zu entwerfen. Darüber hinaus können APIs von Grund auf oder aus Vorlagen erstellt werden, um den Entwicklungsprozess zu beschleunigen.
Werfen wir einen genaueren Blick auf den API-Entwicklungsprozess auf OCI. In diesem Beispiel erstellen wir eine API-Ressource (optional mit einer API-Beschreibung, die aus einer hochgeladenen API-Beschreibungsdatei erstellt wurde) mit der OCI-Konsole. Befolgen Sie die Schritte selbst, indem Sie sich für einen kostenlosen OCI-Account registrieren.
Ausführlichere Informationen zur API-Entwicklung mit der cloudbasierten API-Lösung von Oracle finden Sie im Oracle API Developer's Guide (PDF).
Ein gründliches Testen Ihrer API ist ein entscheidender Schritt, um einen reibungslosen Start und einen reibungslosen Betrieb zu gewährleisten. Hier finden Sie eine kurze Liste effektiver Best Practices für die API, die Sie bei der Bereitstellung von APIs unterstützen, die Ihren Geschäftsanforderungen entsprechen:
Sind Sie bereit, Ihre API zu erstellen und zu testen? Testen Sie Oracle Cloud Infrastructure API-Management-Services kostenlos, um die vollständige API-Lebenszyklusmanagementlösung zu erleben.