Die Grundbausteine einer API-Anfrage

Einführung in APIs mit Python

Chris Ramakers

Engineering Manager

Was sind URLs?

  • URL = Uniform Resource Locator
  • Die strukturierte Adresse einer API-Ressource
  • Passe die URL an, um mit bestimmten API-Ressourcen zu interagieren
http://350.5th-ave.com/unit/243
Einführung in APIs mit Python

Die URL zerlegen

Ein Diagramm mit den Teilen einer URL: Protokoll (http://), Domain (350.5th-ave.com), Port (:80), Pfad (/unit/243) und Query (?floor=77).

  • Protokoll = das Transportmittel
  • Domain = die Straßenadresse des Bürogebäudes
  • Port = das Tor bzw. die Tür zum Eintritt
  • Pfad = die konkrete Büroeinheit im Gebäude
  • Query = zusätzliche Anweisungen
Einführung in APIs mit Python

Query-Parameter mit requests hinzufügen

# Den Query-Parameter an den URL-String anhängen
response = requests.get('http://350.5th-ave.com/unit/243?floor=77&elevator=True')
print(response.url)
http://350.5th-ave.com/unit/243?floor=77&elevator=True
  • Verwende das Argument params, um Query-Parameter hinzuzufügen
# Dictionary erstellen
query_params = {'floor': 77, 'elevator': True}
# Das Dictionary über das Argument `params` übergeben
response = requests.get('http://350.5th-ave.com/unit/243', params=query_params)
print(response.url)
http://350.5th-ave.com/unit/243?floor=77&elevator=True
Einführung in APIs mit Python

HTTP-Verben

  • Ziel: Einheit 243 im Bürogebäude 350 5th Ave
  • URL: http://350.5th-ave.com/unit/243

Aktionen

Verb Aktion Beschreibung
GET Lesen Postfachinhalt prüfen
POST Erstellen Neues Paket ins Postfach legen
PUT Aktualisieren Alle Pakete durch ein neues ersetzen
DELETE Löschen Alle Pakete aus dem Postfach entfernen
1 Es gibt insgesamt 9 HTTP-Verben, aber für einfache REST-APIs sind nur diese 4 relevant
Einführung in APIs mit Python

Daten mit POST und PUT senden

# GET = Ressource abrufen
response = requests.get('http://350.5th-ave.com/unit/243')

# POST = Ressource erstellen response = requests.post('http://350.5th-ave.com/unit/243', data={"key": "value"}) # PUT = Bestehende Ressource aktualisieren response = requests.put('http://350.5th-ave.com/unit/243', data={"key": "value"})
# DELETE = Ressource löschen response = requests.delete('http://350.5th-ave.com/unit/243')
  • Jedes Verb hat seine eigene Methode im Paket requests
  • Verwende das Argument data, um Daten an eine POST- oder PUT-Anfrage zu übergeben.
Einführung in APIs mit Python

Lass uns üben!

Einführung in APIs mit Python

Preparing Video For Download...