HTTP-Endpunkt (URL)
Eine URL besteht aus folgenden Teilen (erklärt an der API von Microsoft Graph):
https://graph.microsoft.com:8080/v1.0/me/joinedTeams?p1=A&p2=B#ressource
\____/ \___________________/ \__/ \______________________/ \____________/ \________/
| | | | | |
Schema Host Port Pfad Query Fragment
Schema: Gibt das verwendete Protokoll an, mit dem der Request gesendet wird. Hier: http oder https
Host: Der Host-Name identifiziert den Host, welcher die API bereitstellt. Statt dem Host-Namen kann auch dessen IP-Adresse angegeben werden.
Port: Der Port muss angegeben werden, wenn er nicht dem Standard entspricht. (Standard Http-Port: 80, HTTPS: 443)
Pfad: Der Pfad gibt die Resource an, welche adressiert werden soll, im Beispiel /v1.0/me/joinedTeams.
Oftmals gibt es einen Basis-Pfad, welcher bei unterschiedlichen Requests immer gleich bleibt. Im Beispiel wäre dies die Versionsnummer der API /v1.0.
Der Pfad kann auch zu einer Datei führen (einer Html-Datei zur Anzeige im Browser oder eine PDF-Datei zum Herunterladen von Binärdaten)
Query: Beim Absetzen eines Requests kommt es häufig vor, dass zusätzliche Parameter (z.B. Filter oder IDs) mitgegeben werden müssen. Die Query besteht aus ein oder mehreren Namen/Werte-Paaren, welche mit einem “&” separiert werden, und wird am Ende des Pfades mit einem “?” angehängt (z.B. ?user=Mustermann&zipcode=83022).
Fragment: Mit dem Fragmentbezeichner (eingeleitet mit einem #) kann eine Untereinheit einer Ressource adressiert werden kann.
HTTP Methode
Mit der Methode wird angegeben, was mit den Daten gemacht werden soll. Am gebräuchlichsten ist die Methode GET, mit der Daten von einer API abgerufen werden können. Darüber hinaus gibt es noch die Methoden PATCH, POST, PUT, DELETE und weitere, mit denen Daten geändert bzw. gelöscht werden können.
Die Header werden als Liste von Namen/Werte-Paaren mitgegeben. Im Header werden Informationen über den Sender und die Kommunikation mitgegeben, z.B. auch die Formatierung der im Content übergebenen Daten. Welche Header benötigt werden, sollte in der API beschrieben sein.
Content
Im Content (auch als Body bezeichnet) werden dem HTTP-Request zusätzliche Daten mitgegeben. Dies ist üblicherweise bei Hinzufügen oder Ändern von Daten der Fall (also bei den Methoden PATCH, POST, PUT). Der Content kann Textform (z.B. im Json- oder XML-Format) oder als Name/Wert-Paare (form-url-encoded) übergeben werden. Daten werden dann bevorzugt im Content übermittelt, wenn sie sehr umfangreich sind oder nicht in der URL ersichtlich sein sollen.