4D v16.3WEB SEND RAW DATA |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
WEB SEND RAW DATA
WEB SEND RAW DATA
Der Befehl WEB SEND RAW DATA legt fest, dass der 4D Web Server HTTP Rohdaten sendet, die gestückelt werden können.
HTTP/1.1 302 Location: http://... Übergeben Sie nur: Location: http://... vervollständigt 4D die Anfrage durch Hinzufügen von HTTP/1.1 302. Mit dem optionalen Parameter * geben Sie an, dass die Antwort “stückweise” gesendet wird. Das Stückeln der Antwort ist hilfreich, wenn der Server eine Antwort sendet, ohne ihre Gesamtlänge zu kennen, z.B. wenn die Antwort nicht generiert wurde. Alle Browser, die mit HTTP/1.1- kompatibel sind, akzeptieren gestückelte Antworten (chunked responses). Alle Anweisungen WEB SEND RAW DATA, die auf die Ausführung von WEB SEND RAW DATA (Daten;*) in derselben Methode folgen, gelten als Teil der Antwort, unabhängig, ob mit oder ohne den Parameter *. Der Server beendet die stückweise Übersendung, wenn die Ausführung der Methode abgeschlossen ist. Hinweis: Unterstützt der Web Client nicht HTTP/1.1, konvertiert 4D die Antwort automatisch in ein mit HTTP/1.0 kompatibles Format (die Daten werden nicht gestückelt gesendet). In diesem Fall entspricht das Ergebnis evtl. nicht Ihren Wünschen. Sie sollten deshalb prüfen, ob der Web Browser HTTP/1.1 unterstützt und eine entsprechende Antwort sendet. Dafür können Sie folgenden Code verwenden: C_BOOLEAN($0) In Kombination mit dem Befehl WEB GET HTTP BODY, sowie anderen Befehlen im Kapitel “Web Server” steht 4D Entwicklern eine breite Palette an Werkzeugen zur Verfügung, um die Abarbeitung ein- und ausgehender HTTP-Anfragen vollkommen eigenständig zu gestalten. Die Übersicht zeigt die verschiedenen Werkzeuge: Nachfolgendes Beispiel zeigt die Verwendung von WEB SEND RAW DATA mit der Option gestückelt. Die Daten – eine Folge von Nummern – wird in 100 Stücken gesendet, die unmittelbar in einer Schleife erzeugt werden. Beachten Sie, dass der Header der Antwort nicht explizit gesetzt wird. Der Befehl sendet ihn automatisch und fügt das Feld transfer-encoding: chunked ein, da der Parameter * verwendet wird. C_LONGINT($cpt)
Siehe auch
|
EIGENSCHAFTEN
Produkt: 4D GESCHICHTE
Erstellt: 4D 2004 ARTIKELVERWENDUNG
4D Programmiersprache ( 4D v16) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||