Das Interface IF_HTTP_CLIENT enthält die folgenden Methoden:
Die Methoden sind teilweise identisch mit denen der Server-Rolle.
ESCAPE_HTML |
verwenden Sie die Methode des IF_HTTP_UTILITY |
ESCAPE_URL |
verwenden Sie die Methode des IF_HTTP_UTILITY |
UNESCAPE_URL |
verwenden Sie die Methode des IF_HTTP_UTILITY |
AUTHENTICATE |
Führt die Authentifizierung am HTTP-Server aus. Handelt es sich z. B. dabei um ein SAP-System, so erzeugt dieses SAP-System einen SAP-Anmeldebildschirm, und durch Ausführen von AUTHENTICATE erfolgt die Eingabe von Benutzer, Passwort, Mandant und Sprache. Grundsätzlich wird die Authentifizierung so durchgeführt, wie sie der jeweilige HTTP-Server vorschreibt. |
APPEND_FIELD_URL |
Fügt das Name/Wert-Paar an den query string der URL an |
CREATE_ABS_URL |
Erzeugt absoluten URL |
CREATE_REL_URL |
Erzeugt relativen URL |
CLOSE |
Schließt die HTTP-Verbindung. Diese Methode wird aufgerufen, wenn die HTTP-Verbindung, also der Client-Kontrollblock, nicht mehr benötigt wird. |
RECEIVE |
Füllt die Response in die RESPONSE- Struktur. Diese Methode muss für jeden HTTP-Request aufgerufen werden, damit anschließend mit den erhaltenen Daten weitergearbeitet werden kann.
Die Methode darf nicht verwendet werden, während noch von einem Datenbank-Cursor gelesen wird (innerhalb einer Schleife, wie z. B. SELECT/LOOP/EXEC SQL oder vor einem FETCH-Befehl), da sie implizite Datenbank-Commits auslösen kann und dadurch zum Schließen des zugehörigen Datenbank-Cursors führt. |
GET_LAST_ERROR |
Liefert den Return Code des letzten Methodenaufrufs |
LISTEN |
Nur falls mehrere Requests parallel weggeschickt wurden: Kommt eine Response, so wird ermittelt, auf welchen Request sie sich bezieht. Danach kann die Methode RECEIVE (s.o.) aufgerufen werden. |
SEND |
Wenn das REQUEST-Attribut mit den Request-Daten gefüllt ist, kann durch Aufruf der Methode SEND der HTTP-Request an den HTTP-Server geschickt werden. Die Methode wandelt die Daten in einen HTTP-Datenstrom um und schickt sie zum Server. Der Methode wird der Timeout für die Wartezeit auf die Antwort in Sekunden mitgegeben. Hier können auch die Konstanten CO_TIMEOUT_DEFAULT und CO_TIMEOUT_INFINITE verwendet werden.
Die Methode darf nicht verwendet werden, während noch von einem Datenbank-Cursor gelesen wird (innerhalb einer Schleife, wie z. B. SELECT/LOOP/EXEC SQL oder vor einem FETCH-Befehl), da sie implizite Datenbank-Commits auslösen kann und dadurch zum Schließen des zugehörigen Datenbank-Cursors führt. |
REFRESH_COOKIE |
Zurücksetzen des Cookie-Objekts (das Objekt existiert dann noch, hat jedoch keinen Inhalt mehr) |
REFRESH_REQUEST |
Zurücksetzen des Request-Objekts |
REFRESH_RESPONSE |
Zurücksetzen des Response-Objekts |
SET_COMPRESSION |
Aktivierung/Deaktivierung der Komprimierung: es werden die Konstanten CO_COMPRESS_BASED_ON_MIME_TYPE, CO_COMPRESS_IN_ALL_CASES und CO_COMPRESS_NONE verwendet. |
Vergleichen Sie die Liste mit der aktuellen Liste in der Transaktion SE24.
Ein Beispiel, in dem einige dieser Methoden verwendet werden, finden Sie unter:
Ausführliche Beispielprogramme finden Sie unter:
· Beispielprogramm: Ausführung eines HTTP-Requests
· Parallelisieren von Requests