Version 6.8 (Geändert)
SET HTTP HEADER (Kopfteil|Feld{; WertArray})
Parameter | Typ | Beschreibung | |
Kopfteil|Feld | Text|Text Array | Feld oder Variable mit dem HTTP | |
Kopfteil der Anfrage bzw. der Felder | |||
WertArray | Text Array | HTTP Kopfteil Feldinhalt |
Beschreibung
Mit dem Befehl SET HTTP HEADER setzen Sie die Felder in den HTTP Kopfteil der Antwort, die 4D an den Web Browser sendet. Der Befehl gilt nur in einem Web Prozess im nicht kontextuellen Modus.
Es stehen zwei Syntaxarten zur Verfügung:
Erste Syntax: SET HTTP HEADER (Kopfteil)
Im Parameter FeldArray übergeben Sie die gewünschten Felder vom Typ Text (Feld oder Variable) für das HTTP Kopfteil. Damit können Sie Kopfteile vom Typ "HTTP/1.0 200 OK"+Char(13)+"Set-Cookie: C=HALLO" schreiben.
Die Felder müssen immer mit CR oder CR/LF (Zeilenschaltung/Zeilenvorschub) voneinander getrennt sein.
Beispiel für ein eigenes "Cookie":
C_TEXT($vTcookie) $vTcookie:="SET-COOKIE: USER="+String(Abs(Random))+"; PATH=/" SET HTTP HEADER($vTcookie)
Hinweis: Der Befehl erlaubt als Parameter des Kopfteils keine Konstante vom Typ Text, es muss eine 4D Variable oder ein Feld sein.
Weitere Information über die Syntax finden Sie in der Dokumentation R.F.C (Request For Comments) unter der Internet Addresse: www.w3c.org.
Zweite Syntax: SET HTTP HEADER (FeldArray; WertArray)
Der HTTP Kopfteil lässt sich durch die beiden Arrays FeldArray und WertArray definieren.
Der Kopfteil lässt sich folgendermaßen schreiben:
FeldArray{1}:="X-VERSION" | WertArray{1}:="HTTP/1.0" * |
FeldArray{2}:="X-STATUS" | WertArray{2}:="200 OK" * |
FeldArray{3}:="Set-Cookie" | WertArray{3}:="C=HALLO" |
* Die beiden ersten Elemente sind die erste Zeile der Antwort. Werden diese eingegeben, sollten Sie das erste und zweite Element des Array sein. Sie können diese aber auch übergehen und nur schreiben:
FeldArray{1}:="Set-Cookie" WertArray{1}:="C=HALLO"
Dann gestaltet 4D das Format des Kopfteils.
Die HTTP Feldnamen sind in Übereinstimmung mit dem HTTP Standard immer in Englisch.
Bei mehreren Aufrufen von SET HTTP HEADER im selben Web Prozess wird nur der letzte Aufruf berücksichtigt.
Legen Sie keinen Status fest, ist er automatisch HTTP/1.0 200 OK.
Der Zugriff auf HTTP Felder ist evtl. erweitert: Expires, Last-Modified und Content-Type sind nun editierbar.
4D legt nur noch die Felder Server, Date und Content-Length fest.