WseReturn
Über diesen Befehl können Informationen vom Client an den Web-Server zurückgegeben werden. Bei diesen Informationen kann es sich um HTML-Text handeln, der in eine bestehende Seite integriert wird, um eine ganze HTML-Seite, die an den Browser übermittelt werden soll oder um eine Datei beliebigen Typs, die zum Browserrechner übertragen werden soll. Zusätzlich kann für die übertragenen Daten auch ein Verfallsdatum beim Client definiert werden. Die Daten, die an den Web-Server und damit an den Browser übertragen werden, können unterschiedlich vorliegen.
Die Art der Daten wird in (int1) bestimmt:
-
Mit dieser Option kann der HTTP-Header um zusätzliche Felder ergänzt werden.
-
In (var4) wird eine Zeichenkette angegeben.
-
Ein bestehender Text wird übertragen. Der Text liegt in einem Textpuffer vor. Der Textpuffer wird in (var4) übergeben.
-
Eine externe Datei wird übergeben. In (var4) steht der Pfad und der Name der Datei.
-
Das Verfallsdatum für die übertragenen Daten wird festgelegt.Bis dieses Datum abgelaufen ist, wird der Client keine neue Anfrage für die gleichen Daten senden und die bereits übertragenen Daten aus seinem Cache verwenden. Das Ablaufdatum wird als Wert vom Typ
caltimein (var4) definiert, (int2) und (alpha3) werden dann nicht verwendet. Wird überWseReturn()kein Verfallsdatum definiert, wird automatisch ein bereits abgelaufenes für die Daten verwendet.infoVoraussetzung für die korrekte Funktionsweise des Verfallsdatums ist ein Client, der das Verfallsdatum von übertragenen Daten berücksichtigt.
In (int2) können besondere Optionen zur Verarbeitung der Rückgabedaten gesetzt werden:
-
Die zurückgegebenen Daten werden nicht durch den Client interpretiert. Der Web-Benutzer kann sofort einen weiteren Request verarbeiten. Diese Option ist automatisch aktiv, wenn der MIME-Typ nicht text/html ist.
-
Die zurückgegebenen Daten werden erst nach dem Beenden der Prozedur an den Web-Server übergeben. Sollte ein interner Text übergeben werden, ist darauf zu achten, dass der entsprechende Puffer nach Prozedurende noch vorhanden ist. Diese Art der Rückgabe ist etwas schneller, wenn
_WseNoParseangegeben wird. -
Die Session wird nach der Rückgabe beendet, der Web-Benutzer wird entfernt und die Benutzer-ID ist anschliessend nicht mehr gültig.
-
Der Rückgabewert wird in den Zeichensatz ISO 8859-1 (Latin-1) umgewandelt. Dies wird notwendig, wenn Sonderzeichen (Umlaute etc.) in dem Rückgabewert vorkommen.
-
Sonderzeichen werden in &#
<Nummer>; gewandelt. -
Die Steuerzeichen im HTML-Text werden umgewandelt.
In (alpha3) wird die Art der zurückgegebenen Daten übergeben. Im Falle eines HTML-Textes wird hier der MIME-Typ text/html angegeben. Es können aber auch andere Daten übertragen werden. Die wichtigsten MIME-Typen sind in der nachfolgenden Liste zusammengefasst:
- text/html: HTML-Text
- text/xml: XML-Text
- application/octet-stream: Binäres Format
- application/postscript: Postscript-Datei
- application/msword: Microsoft Word Dokument
- application/pdf: Adobe Acrobat Dokument
- application/zip: komprimiertes Archiv
- application/rtf: Rich-Text-Dokument
- image/gif: GIF-Datei
- image/jpeg: JPG-Datei
- image/tiff: TIF-Datei
- audio/mpeg: MPEG-Datei (nur Ton)
- video/mpeg: MPEG-Datei
Eine vollständige Liste registrierter MIME-Typen kann über die Homepage der IANA (http://www.iana.org/) abgerufen werden. Nicht standardisierte MIME-Subtypen werden mit einem vorangestellten x- angegeben (audio/x-wav).
Die Datenquelle wird im Parameter (var4) angegeben. Je nach Art des Rückgabewertes (int1) müssen hier unterschiedliche Angaben gemacht werden:
- int1: var4
_WseRetHeader: Felder und Werte des HTTP-Response-Headers_WseRetString: Zeichenkette_WseRetText: Deskriptor des Textpuffers_WseRetFile: Pfad und Dateiname_WseRetExpires: Verfallsdatum der übertragenen Daten vom Typcaltime
Im Parameter (int5) kann ein Statuscode übergeben werden. Dieser Statuscode entspricht einem HTTP-Status. Eine genaue Beschreibung der HTTP-Status befindet sich im RFC 2068 (Request For Comments).
Bei Fehlerwert 0 ist kein Fehler aufgetreten, bei Fehlerwert -50061 wurde ein weiterer WseReturn()-Befehl ausgeführt, nachdem bereits ein Befehl mit der Option _WseSendAfter oder mit einem anderen MIME-Typ ausgeführt wurde.