RestFullRequest

value RestFullRequest ( value rest, string strHttpVerb, string strUriPath, string strBodyText / array arrBodyBytes, BYREF string strResponse / BYREF array arrResponse );

Rückgabewert

Rückgabewert

Beschreibung

TRUE / true / 1

Die REST-Anfrage wurde erfolgreich abgeschlossen.

FALSE / false / 0

Das REST-Anfrage ist fehlgeschlagen. Ist das REST-Objekt rest gültig, kann die Ursache mit RestGetLastError bzw. RestGetStatusCode ausgelesen werden.

Parameter

rest

Das gültige REST-Objekt, des REST-Servers an dem die vollständige REST-Abfrage durchgeführt werden soll.

strHttpVerb

Gibt die Methode an, die der REST-Server zur Verarbeitung der Anfrage verwenden soll.

Wert

Beschreibung

"GET"

Unter die Angabe der URI strUriPath wird eine Ressource (zum Beispiel eine JSON-Antwort) vom Server angefordert. Sind strBodyText/arrBodyBytes Inhalte vorhanden, so werden diese mitversandt.
Ein GET-Aufruf kann beliebig oft durchgeführt werden, da dieser Aufruf nur Daten abfragt und daher keine Daten am Server verändert.

"POST"

Unter die Angabe der URI strUriPath werden Daten zur weiteren Verarbeitung an den Server verschickt. Sind strBodyText/arrBodyBytes Inhalte vorhanden, so werden diese mitversandt.
Ein POST-Aufruf kann Daten am Server verändern bzw. einen Prozess am Server starten.

"PUT"

Unter die Angabe der URI strUriPath werden Daten zur weiteren Verarbeitung an den Server verschickt. Sind strBodyText/arrBodyBytes Inhalte vorhanden, so werden diese mitversandt.
Ein PUT-Aufruf erzeugt entweder neue Daten am Server oder verändert bestehende Ressourcen.

"DELETE"

Unter die Angabe der URI strUriPath werden Daten zur weiteren Verarbeitung an den Server verschickt. Sind strBodyText/arrBodyBytes Inhalte vorhanden, so werden diese mitversandt.
Ein DELETE-Aufruf löscht vorhandene Ressourcen vom Server.

 

strBodyText

Der Body als Zeichenkette, dessen Inhalt an die Resource strUriPath des Servers gesandt werden soll. Soll kein Body übertragen werden, muss dieser Parameter ein Leerstring "" oder null sein.

arrBodyBytes

Der Body als array mit Byteinhalt, dessen Inhalt an die Resource strUriPath des Servers gesandt werden soll. Soll kein Body übertragen werden, muss dieser Parameter ein Leerstring "" oder null sein.

strResponse

Die Antwort des REST-Servers auf diese Anforderung als Zeichenkette.

arrResponse

Die Antwort des REST-Servers auf diese Anforderung als array mit Byteinhalt.

Bemerkungen

Sendet eine vollständige REST-Anfrage an den über das REST-Objekt rest erreichbaren REST-Server und speichert dessen vollständige Antwort in strResponse bzw. arrResponse. Die Anfrage setzt sich aus dem eventuell vorher angelegten Header, dem hier übergebenen URI strUriPath und dem Body strBodyText/arrBodyBytes zusammen. Der Body der Anfrage ist optional - ist kein Body notwendig, genügt die Übergabe eines Leerstrings "" oder einer null für strBodyText/arrBodyBytes.

Diese Funktion ruft intern nacheinander die Funktionen RestSendRequest, RestReadResponseHeader und RestReadResponse auf, sodass diese Funktionen in der Regel nicht aufgerufen werden zu brauchen.

Beispiel

//ip.jsontest.com liefert als Antwort die IP-Adresse des anfragenden Clients

value rest;
string strLastError, strResponse;
if (!RestConnect(rest, "http://ip.jsontest.com"))
    RestGetLastError(rest, strLastError, true);
    return;
end
RestFullRequest(rest, "GET", "/", NULL, strResponse);

strResponse = JsonExpand(strResponse);
//Inhalt von strResponse:
//{
//  "ip": "82.165.12.98"
//}
RestDisconnect(rest);
 

Die REST-Funktionen

Siehe auch  RestConnect, RestConnectAsync, RestDisconnect, RestFullRequestAsync, RestGetLastError