Was ist eine API? Und andere Akronyme: REST, SOAP, XML, JSON, WSDL


Wenn Sie einen Browser verwenden, sendet Ihr Browser Anfragen an den Server des Clients und der Server sendet Daten zurück, die Ihr Browser zusammenstellt und eine Webseite anzeigt. Aber was wäre, wenn Sie nur möchten, dass Ihr Server oder Ihre Webseite mit einem anderen Server kommuniziert? Dazu müssten Sie eine API programmieren.
Wofür steht API?
API ist eine Abkürzung für Programmierschnittstelle (API). Eine API ist eine Reihe von Routinen, Protokollen und Tools zum Erstellen webfähiger und mobilbasierter Anwendungen. Die API gibt an, wie Sie sich authentifizieren (optional), Daten vom API-Server anfordern und empfangen können.
Was ist eine API?
Eine API ist im Wesentlichen ein Satz von Regeln und Spezifikationen, der es verschiedenen Softwareanwendungen ermöglicht, miteinander zu kommunizieren und zu interagieren. Sie fungiert als Messenger oder Vermittler und ermöglicht es einer Anwendung, Daten oder Dienste von einer anderen anzufordern und dann eine Antwort zu erhalten.
Lassen Sie uns ein einfaches Beispiel geben. Wenn Sie einen Link-Shortener verwenden, um einen Long zu verteilen URL einfacher besser, Sie könnten einen Dienst wie nutzen Bit.ly. Sie geben die lange URL ein, senden die URL und Bit.ly antwortet mit der kurzen URL.
Was wäre, wenn Sie Bit.ly im Rahmen einer von Ihnen verwendeten Plattform verwenden möchten? Vielleicht haben Sie online einen QR-Code-Ersteller erstellt, möchten aber zuerst lange URLs kürzen. In diesem Fall könnten Sie Ihre Website so programmieren, dass sie die Anfrage an die Bit.ly-API sendet und dann die Antwort erfasst, um Ihren QR-Code zu erstellen.
Der Prozess wird mit einer API automatisiert, sodass kein menschliches Eingreifen erforderlich ist. Dies ist die Chance, die APIs jeder Organisation bieten. APIs unterstützen Systeme bei der Synchronisierung von Daten, der Verarbeitung von Anforderungen und der Automatisierung von Prozessen, die normalerweise manuell ausgeführt werden.
Wenn eine Plattform über eine robuste API verfügt, bedeutet dies, dass Sie sowohl integrieren als auch automatisieren können. Dadurch sparen Sie manuelle Zeit, verbessern die Echtzeitfunktionen Ihrer Plattformen und sorgen für eine höhere Genauigkeit – und vermeiden Probleme bei der manuellen Dateneingabe.
Ein Video zur Funktionsweise von APIs
Wenn Sie Plattformentwickler sind, bieten APIs auch die Möglichkeit, Ihre Benutzeroberfläche von Ihren Berechnungen und Datenbankabfragen zu trennen. Warum ist das wichtig? Während Sie Ihre Benutzeroberfläche entwickeln, können Sie dieselben APIs verwenden, die Sie für andere Dritte veröffentlichen. Sie können Ihre Benutzeroberfläche neu schreiben, ohne sich Sorgen machen zu müssen, dass die Back-End-Integration beschädigt wird.
So finden Sie verfügbare APIs
Suchen Sie eine API für ein bestimmtes Produkt oder eine bestimmte Dienstleistung? Hier sind einige Ressourcen, die APIs auflisten, die Sie persönlich und kommerziell nutzen können:
So testen Sie APIs
Eine API ist einfach eine HTTP-Anfrage, ähnlich wie ein Browser. Der Unterschied besteht darin, dass eine API häufig eine Authentifizierungsmethode erfordert, um die Anfrage zu stellen. Wenn keine Authentifizierung erforderlich ist, können Sie sogar eine Anfrage stellen, indem Sie die Anfrage-URL in einen Browser einfügen. Hier ist ein Beispiel für eine Anfrage an eine Open-Source-Wetter-API.
Unter OSX können Sie das nutzen cURL Befehl in einem Terminalfenster. Beim Ausführen des Befehls cURL stellt eine GET-Anfrage an die angegebene API-URL und die Antwort mit den Wettervorhersagedaten wird im Terminal angezeigt.
curl "https://api.open-meteo.com/v1/forecast?latitude=52.52&longitude=13.41¤t_weather=true&hourly=temperature_2m,relativehumidity_2m,windspeed_10m" Unter Windows können Sie installieren curl und fügen Sie es dem PATH des Systems hinzu, damit der Befehl funktioniert. Alternativ können Sie auch Drittanbieter nutzen curl ausführbare Dateien für Windows, wie z cURL für Windows or Curl für Windows von Winamp und führen Sie den Curl-Befehl auf ähnliche Weise aus.
Hier sind einige zusätzliche Sprachen und wie Sie eine API-Anfrage stellen können:
- Python: Die
requestsDie Bibliothek wird häufig zum Senden von HTTP-Anfragen in Python verwendet. Hier ist ein Beispiel:
import requests
response = requests.get('https://example.com')
print(response.text) - JavaScript (Node.js): Die
axiosDie Bibliothek ist ein weit verbreiteter HTTP-Client für Node.js. Hier ist ein Beispiel:
const axios = require('axios');
axios.get('https://example.com')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
}); - JQuery: Verwenden Sie das
$.ajaxor$.getFunktionen zum Senden von HTTP-Anfragen. Hier ist ein Beispiel für die Erstellung einer GET-Anfrage mit$.ajaxin jQuery:
$.ajax({
url: 'https://example.com',
method: 'GET',
success: function(response) {
console.log(response);
},
error: function(error) {
console.error(error);
}
}); - Rubin: Die Standardbibliothek von Ruby umfasst die
net/httpModul zum Senden von HTTP-Anfragen. Hier ist ein Beispiel:
require 'net/http'
require 'uri'
uri = URI.parse('https://example.com')
response = Net::HTTP.get_response(uri)
puts response.body - Java: Java bietet verschiedene Bibliotheken und Frameworks zum Senden von HTTP-Anfragen, z
HttpURLConnection(in der Standardbibliothek), Apache HttpClient oder OkHttp. Hier ist ein Beispiel mitHttpURLConnection:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class Main {
public static void main(String[] args) throws IOException {
URL url = new URL("https://example.com");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
System.out.println(response.toString());
}
} - C# oder ASP.NET: Verwenden Sie das
HttpClientKlasse, um HTTP-Anfragen zu stellen. Hier ist ein Beispiel für die Erstellung einer GET-Anfrage mitHttpClientin C #:
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
using (HttpClient client = new HttpClient())
{
HttpResponseMessage response = await client.GetAsync("https://example.com");
response.EnsureSuccessStatusCode(); // Ensure a successful response
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
}
}
} Denken Sie daran, das Notwendige hinzuzufügen using Anweisungen und behandeln Sie Ausnahmen bei der Arbeit entsprechend HttpClient in Ihrer ASP.NET- oder C#-Anwendung.
- WordPress: Die WordPress-API verfügt über eigene Funktionen
wp_remote_getorwp_remote_post:
$response = wp_remote_get('https://example.com');
if (is_wp_error($response)) {
$error_message = $response->get_error_message();
echo "Request failed: $error_message";
} else {
$body = wp_remote_retrieve_body($response);
$data = json_decode($body);
// Process the retrieved data
var_dump($data);
} Diese Beispiele veranschaulichen, wie eine einfache GET-Anfrage ausgeführt wird. Diese Bibliotheken unterstützen jedoch normalerweise andere HTTP-Methoden (GET, POST usw.) und bieten Optionen zum Festlegen von Headern, zum Senden von Anforderungsnutzdaten und zur erweiterten Verarbeitung von Antworten.
Denken Sie daran, alle erforderlichen Abhängigkeiten oder Bibliotheken für Ihre Programmiersprache zu installieren, bevor Sie die Codebeispiele ausführen.
Talend verfügt über eine großartige Chrome-Anwendung für die Interaktion mit APIs und die Anzeige ihrer Antworten, wenn Sie APIs testen möchten, ohne eine Codezeile schreiben zu müssen.
Fügen Sie den API-Tester von Talend zu Chrome hinzu
Wofür steht das Akronym SDK?
SDK ist eine Abkürzung für Software Developer Kit.
Wenn ein Unternehmen seine API veröffentlicht, gibt es in der Regel eine Begleitdokumentation, die zeigt, wie die API authentifiziert wird, wie sie abgefragt werden kann und welche entsprechenden Antworten sie gibt. Um Entwicklern einen Vorsprung zu verschaffen, veröffentlichen Unternehmen oft ein Software Developer Kit (SDK), um eine Klasse oder die notwendigen Funktionen einfach in Projekte einzubinden, die der Entwickler schreibt.
Wofür steht das Akronym XML?
XML ist eine Abkürzung für Erweiterbare Auszeichnungssprache. XML ist eine Auszeichnungssprache, die zum Codieren von Daten in einem Format verwendet wird, das sowohl für Menschen als auch für Maschinen lesbar ist.
Hier ist ein Beispiel dafür, wie XML angezeigt wird:
<?xml version="1.0"?>
<product id="1">
<title>Product A</title>
<description>The first product</description>
<price>
<amount>5.00</amount>
<per>each</per>
</price>
</book> Wofür steht das Akronym JSON?
JSON ist eine Abkürzung für JavaScript-Objekt-Notation. JSON ist ein Format zur Strukturierung von Daten, die über eine API hin und her gesendet werden. JSON ist eine Alternative zu XML. REST-APIs antworten häufiger mit JSON – einem offenen Standardformat, das menschenlesbaren Text verwendet, um Datenobjekte zu übertragen, die aus Attribut-Wert-Paaren bestehen.
Hier ist ein Beispiel für die obigen Daten mit JSON:
{
"id": 1,
"title": "Product A",
"description": "The first product",
"price": {
"amount": "5.00",
"per": "each"
}
} Wofür steht das Akronym REST?
REST ist ein Akronym für die Repräsentative Zustandsübertragung Architekturstil für verteilte Hypermediasysteme.
Puh ... tief durchatmen! Sie können das ganze lesen Dissertation hier, genannt die Architekturstile und das Design netzwerkbasierter Softwarearchitekturen, eingereicht in teilweiser Erfüllung der Anforderungen für den Abschluss als DOKTOR FÜR PHILOSOPHIE in Informations- und Informatik von Roy Thomas Fielding.
Danke, Dr. Fielding!
Wofür steht das Akronym SOAP?
SOAP ist eine Abkürzung für Einfaches Objektzugriffsprotokoll
Ich bin kein Programmierer, aber meiner Meinung nach tun Entwickler, die SOAP lieben, dies, weil sie einfach Code in einer Standard-Programmierschnittstelle entwickeln können, die das liest Webdienst-Definitionssprache (wsdl) Datei. Sie müssen die Antwort nicht parsen, dies geschieht bereits mit der WSDL. SOAP erfordert einen programmgesteuerten Umschlag, der die Nachrichtenstruktur und deren Verarbeitung definiert, einen Satz von Codierungsregeln zum Ausdrücken von Instanzen anwendungsdefinierter Datentypen und eine Konvention zum Darstellen von Prozeduraufrufen und -antworten.



