Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
HTTP Get
|
HTTP Get ( url ; Antwort {; KopfteilNamen ; KopfteilWerte}{; *} ) -> Funktionsergebnis | ||||||||
Parameter | Typ | Beschreibung | ||||||
url | Text |
![]() |
URL, an die die Anfrage gesendet wird | |||||
Antwort | Text, BLOB, Bild, Objekt |
![]() |
Ergebnis der Anfrage | |||||
KopfteilNamen | Array Text |
![]() |
Kopfteilnamen der Anfrage | |||||
![]() |
zurückgegebene Kopfteilnamen | |||||||
KopfteilWerte | Array Text |
![]() |
Kopfteilwerte der Anfrage | |||||
![]() |
zurückgegebene Kopfteilwerte | |||||||
* | Operator |
![]() |
Mit *: Verbindung wird beibehalten (keep-alive) Ohne *: Verbindung wird automatisch geschlossen |
|||||
Funktionsergebnis | Lange Ganzzahl |
![]() |
HTTP Status Code | |||||
Die Funktion HTTP Get sendet eine HTTP GET Anfrage direkt an eine bestimmte URL und bearbeitet die HTTP Server Antwort.
Im Parameter url übergeben Sie die URL, an die die Anfrage gesendet werden soll. Dafür verwenden Sie folgende Syntax:
http://[{user}:[{password}]@]host[:{port}][/{path}][?{queryString}]
Sie können z.B. folgende Strings übergeben:
http://www.myserver.com
http://www.myserver.com/path
http://www.myserver.com/path?name="jones"
https://www.myserver.com/login (*)
http://123.45.67.89:8083
http://john:smith@123.45.67.89:8083
http://[2001:0db8:0000:0000:0000:ff00:0042:8329]
http://[2001:0db8:0000:0000:0000:ff00:0042:8329]:8080/index.html (**)
(*) Während HTTPS Anfragen wird die Zertifizierungsstelle nicht überprüft.
(**) Weitere Informationen zu IPv6 Adressen in urls finden Sie unter RFC 2732
Nach Ausführen des Befehls empfängt der Parameter Antwort das vom Server zurückgegebene Ergebnis der Anfrage. Es entspricht dem Hauptteil der Antwort ohne Kopfteile. In Antwort können Sie verschiedene Variablentypen übergeben:
Hinweis: Wird in Anwort eine Textvariable übergeben, versucht 4D die vom Server zurückgegebenen Daten zu entschlüsseln. 4D versucht zuerst, den Zeichensatz vom content-type Kopfteil zu finden, dann den Inhalt vom Typ BOM, und zuletzt jeden http-equiv Zeichensatz (in html Inhalt) bzw. encoding Attribut (für xml). Wird kein Zeichensatz gefunden, versucht 4D die Antwort in ANSI zu entschlüsseln. Schlägt die Konvertierung fehl, ist der Ergebnistext leer. Sind Sie unsicher, ob der Server eine Information in einem Zeichensatz oder ein BOM zurückgibt, kennen jedoch die Codierung, ist es passender, Antwort in BLOB zu übergeben und die Funktion Convert to text aufzurufen.
Übergeben Sie den Typ BLOB, enthält er vom Server zurückgegebenen Text, ein Bild oder anderen Inhalt (.wav, .zip, etc.). Sie müssen dann die Wiederherstellung dieses Inhalts selbst steuern (das BLOB enthält keine Kopfteile). Übergeben Sie ein Objekt vom Typ C_OBJECT,und gibt die Anfrage ein Ergebnis mit Inhalt vom Typ "application/json" (oder "irgendwas/json"), versucht 4D den JSON Inhalt zu analysieren (parsen), um das Objekt zu definieren.
In KopfteilNamen und KopfteilWerte übergeben Sie Arrays mit den Namen und Werten aus den Kopfteilen der Anfrage.
Diese Arrays enthalten nach Ausführen der Methode die Namen und Werte der vom HTTP Server zurückgegebenen Kopfteile. So können Sie vorallem Cookies verwalten.
Mit dem Parameter * aktivieren Sie den keep-alive Mechanismus für die Server Verbindung. Dieser Parameter ist standardmäßig nicht gewählt, d.h. keep-alive ist nicht aktiviert.
Die Funktion gibt einen standardmäßigen HTTP Status Code (200=OK usw.) zurück, wie vom Server zurückgegeben. Die Liste der HTTP Status Codes finden Sie unter RFC 2616.
Kommt die Verbindung zum Server wegen Netzwerkproblemen (DNS ist fehlgeschlagen, Server ist nicht erreichbar, ...) nicht zustande, gibt die Funktion 0 zurück und ein Fehler wird erzeugt. Sie können Fehler über eine Fehlerverwaltungsmethode abfangen, die über den Befehl ON ERR CALL installiert wird.
Das 4D Logo auf der 4D Web Site laden:
C_TEXT(URLPic_t)
URLPic_t:="http://www.4d.com/sites/all/themes/dimention/images/home/logo4D.jpg"
ARRAY TEXT(HeaderNames_at;0)
ARRAY TEXT(HeaderValues_at;0)
C_PICTURE(Pic_i)
$httpResponse:=HTTP Get(URLPic_t;Pic_i;HeaderNames_at;HeaderValues_at)
Ein RFC laden:
C_TEXT(URLText_t)
C_TEXT(Text_t)
URLText_t:="http://tools.ietf.org/rfc/rfc1.txt"
ARRAY TEXT(HeaderNames_at;0)
ARRAY TEXT(HeaderValues_at;0)
$httpResponse:=HTTP Get(URLText_t;Text_t;HeaderNames_at;HeaderValues_at)
Ein Video laden:
C_BLOB(vBlob)
$httpResponse:=HTTP Get("http://www.example.com/video.flv";vBlob)
BLOB TO DOCUMENT("video.flv";vBlob)
Produkt: 4D
Thema: HTTP Client
Nummer:
1157
Erstellt: 4D v13
Geändert: 4D v14
Geändert: 4D v16 R4
4D Programmiersprache ( 4D v19)
4D Programmiersprache ( 4D v19.1)
4D Programmiersprache ( 4D v19.4)
4D Programmiersprache ( 4D v19.5)
4D Programmiersprache ( 4D v19.6)
4D Programmiersprache ( 4D v19.7)
4D Programmiersprache ( 4D v19.8)