ESP8266: Was nach dem Ende einer HTML-Seite senden?

Gast #3988993
Lesenswert?

Hallo,

zu Beginn einer Anfrage eines Client-Browsers sendet mein 
ESP8266-Server:

HTTP/1.1 200 OK\r\n
Content-type: text/html\r\n
Connection: close\r\n\r\n

Danach wird die HTML-Seite übertragen.

Was muss ich jetzt senden, um dem Client-Browser zu signalisieren, dass 
die Übertragung abgeschlossen ist?

Hintergrund:

Der Server hat ein Timeout  von 30 s, was dazu führt, dass eine neue 
Anfrage diese Zeit abwarten muss, bevor diese bedient wird.
Gast #3989007
Lesenswert?

Gerd schrieb:
> Was muss ich jetzt senden, um dem Client-Browser zu signalisieren, dass
> die Übertragung abgeschlossen ist?

in dem die Verbindung geschlossen wird. Es gibt kein echtes ende.

> Connection: close\r\n\r\n

Florian H. schrieb:
> Wenn ich mich richtig erinnere sendet man ein Content-Length header mit
> der anzahl bytes payload, dann kann man die Verbindung schliessen.

nicht notwendig bei Connection: Close
Gast #3989072
Lesenswert?

Connection: close forder den Browser dazu auf, nach Empfang der Seite 
die Verbindung zu schließen.

Damit der Browser weiss, wie viele Byte er erwarten soll, sendet der 
Server einen Content-Length header.

Alternativ zum Content-Length Header kann der Server die Verbindung 
schließen.

Bei größeren Datenmengen (z.B. Downloads) sollte man jedoch nicht auf 
den Header verzichten, denn der Browser kann sonst keinen 
Fortschrittsbalken anzeigen.

Außerdem geht ohne den Header der Performance-Vorteil von HTTP 1.1 
gegenüber 1.0 verloren.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren