Was ist API (Application Programming Interface)?

Satz von Regeln (Namen von Funktionen oder Operationen, Argumente, Rückgabewerte, Datenformate usw.), nach denen andere Programme die Funktionen einer Software aufrufen und nutzen. Beispiele sind Betriebssystem-APIs, Bibliotheks-APIs und Web-APIs, die Daten über HTTP austauschen, etwa REST-APIs. Aufrufer müssen die Implementierung nicht kennen, und die Implementierung kann ausgetauscht werden, solange die API gleich bleibt. Die entsprechende Vereinbarung auf Maschinencodeebene heißt ABI.

Japanische Bezeichnung: API

„API (Application Programming Interface)“ kommt in 8 Übungsfragen aus 4 Themen vor, z. B. Grundlagen der Webtechnologien, Grundlagen von Cloud und Containern, Cyberangriffe und Abwehr in der Praxis.

Fachgebiet: Softwareentwicklung und Projektmanagement

Jetzt üben: Fragen zu API (Application Programming Interface)

Cloud-Speicher wird für drei Zwecke eingesetzt: (1) als Festplatte an eine virtuelle Maschine angebunden, mit einem Dateisystem versehen und für die Datendateien einer Datenbank genutzt; (2) von mehreren Servern gleichzeitig eingebunden und als gemeinsames Verzeichnis genutzt; (3) zum Lesen und Schreiben einer großen Zahl von Bildern per Schlüssel (Name) über eine API per HTTP, wobei die Kapazität wächst, ohne vorab festgelegt zu werden. Welche Kombination von Speicherarten ist für (1) bis (3) geeignet?

  1. A(1) Objektspeicher, (2) Blockspeicher, (3) Dateispeicher
  2. B(1) Dateispeicher, (2) Objektspeicher, (3) Blockspeicher
  3. C(1) Blockspeicher, (2) Dateispeicher, (3) Objektspeicher
Antwort und Erläuterung anzeigen

Antwort: C. (1) Blockspeicher, (2) Dateispeicher, (3) Objektspeicher

Blockspeicher bindet einen Bereich fester Größe als virtuelle Festplatte an eine virtuelle Maschine an; darauf wird ein Dateisystem angelegt, und er eignet sich für Anwendungen wie Datenbanken, die viele kleine Lese- und Schreibzugriffe schnell ausführen. Dateispeicher stellt ein gemeinsames Dateisystem bereit, das mehrere Server gleichzeitig über NFS, SMB o. Ä. einbinden können. Objektspeicher liest und schreibt Daten als ganze Objekte, die über Schlüssel identifiziert werden, per HTTP über eine API; seine Kapazität lässt sich nahezu unbegrenzt erweitern, und er eignet sich für Bilder, Backups und Logs. Für das Ändern einzelner Teile eines Objekts ist er nicht geeignet, daher legt man Datendateien einer Datenbank nicht darin ab.

Eine Web-API liefert als Body ihrer Antwort Daten im JSON-Format. Welcher Header wird der Antwort üblicherweise hinzugefügt, um das Format des Bodys anzugeben?

  1. AAccept: application/json
  2. BContent-Type: text/html
  3. CContent-Type: application/json
Antwort und Erläuterung anzeigen

Antwort: C. Content-Type: application/json

Die Art der Daten im Body gibt der Header Content-Type an; als Wert steht ein Medientyp (MIME-Typ) in der Form „Typ/Untertyp“, etwa text/html oder image/png. Der Medientyp von JSON ist application/json. JSON ist ein Textformat, das Daten mit Name-Wert-Paaren und Arrays darstellt, etwa {"id": 42, "tags": ["a", "b"]}; es ist knapper als XML und lässt sich gut aus JavaScript verarbeiten, deshalb wird es bei Web-APIs häufig verwendet. Mit dem Header Accept teilt der Client in einer Anfrage mit, welche Formate er empfangen möchte.

„API (Application Programming Interface)“ in den Erläuterungen

Fragen mit „API (Application Programming Interface)“ (8)

  1. Cloud-Speicher wird für drei Zwecke eingesetzt: (1) als Festplatte an eine virtuelle Maschine angebunden, mit einem Dateisystem versehen und für die Datendateien einer Datenbank genutzt; (2) von mehreren Servern gleichzeitig eingebunden und als gemeinsames Verzeichnis genutzt; (3) zum Lesen und Schreiben einer großen Zahl von Bildern per Schlüssel (Name) über eine API per HTTP, wobei die Kapazität wächst, ohne vorab festgelegt zu werden. Welche Kombination von Speicherarten ist für (1) bis (3) geeignet?
  2. Eine Web-API liefert als Body ihrer Antwort Daten im JSON-Format. Welcher Header wird der Antwort üblicherweise hinzugefügt, um das Format des Bodys anzugeben?
  3. Welcher Entwurf einer Web-API folgt den Prinzipien von REST?
  4. Ein Entwickler hat versehentlich eine Konfigurationsdatei mit dem API-Schlüssel eines Cloud-Dienstes in ein öffentliches Git-Repository committet. Sobald er es bemerkte, committete er eine Änderung, die die Datei löscht. Welche anschließende Reaktion ist am besten geeignet?
  5. Welche Beschreibung des ABI (Application Binary Interface) ist richtig?
  6. Das Passwort einer Datenbank wird in einem Kubernetes-Secret gespeichert. Welche Beschreibung eines Secrets ist richtig?
  7. Welche Aussage über ein typisches signiertes JWT (JSON Web Token) ist richtig?
  8. Eine Fotodruck-App liest mit Erlaubnis des Nutzers dessen Fotos aus dem Fotospeicherdienst eines anderen Unternehmens. Welche Rolle zeigt bei OAuth (Version 2.0) dem Nutzer einen Bildschirm an, der um seine Erlaubnis bittet, und stellt der App ein Access-Token aus, wenn der Nutzer zustimmt?

Verwandte Begriffe

HTTP (Hypertext Transfer Protocol) Objektspeicher (Object Storage) JSON (JavaScript Object Notation) REST-API URL (Uniform Resource Locator) HTTP-Methode Git ABI (Application Binary Interface) Aufrufkonvention Zeiger (Pointer)

Zur Glossarübersicht