httpd-server
-
Hallo Forum,
modifiziere einen kleinen httpd-server.
Hier mal kurz der "grobe" arbeitsablauf,-anfrage vom client auswerten
-ggf. daten senden
-socket schliessenNun meine frage, gibt es eine Moeglichkeit den Socket offen zu lassen, sprich
wenn alle daten gesendet worden nicht zu schliessen ?!
Wenn ich den Socket nicht schliesse, bekommt zwar der client die daten
gesendet, aber im Browser-fenster wird nix angezeigt, erst wenn der socket
geschlossen wird.mfg Olli.
PS: Programm ist in C geschrieben.
-
hallo,
der browser wird wohl auf das Schließen des Sockets vom Server warten womit er
erkennt, daß keine weiteren Daten kommen ...mfg
rb
-
Wenn der Client nen "HTTP/1.0"-Client ist, wird er nen Keep-Alive Header mitsenden.
Bei HTTP/1.1 sind Keep-Alive Verbindungen glaube ich sogar Standard...
-
hallo
meinst Du SO_KEEPALIVE ? Oder wie sieht eine Anfrage mit diesem
Keep-Alive Header sonst aus ?wie dem aus sei, wenn ich nen HTTP-Client schreiben würde wäre immer das Erkennungsmerkmal für alle Daten da, der vom Server geschlossene Socket.
Wenn ein MailServer kein \r\n.\r\n sendet der Client aber dies als
Erkennungsmerkmal für alle Daten da ansieht, wartet er auch ewig
Wenn man schon die eine Seite der Kommunikation verändert muß auch die andere Seite verändert werden, also nicht nur
"modifiziere einen kleinen httpd-server. " sondern auch
"modifiziere einen kleinen httpd-client. "
mfg
rb
-
Ein paar URLs dazu:
http://java.sun.com/j2se/1.5.0/docs/guide/net/http-keepalive.html
http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html
-
Wie funktionieren die Chat's per HTTPD-Server ?
Da muss die Verbindung zum Client auch gehalten werden.
Wer hat Info, Links, Danke im vorraus.mfg olli.
-
Ich hab bisher keinen http-chat gesehen der die verbindung hält.
Nur welche die java-applets nutzen, die persistente verbindungen halten oder welche die sich über javascript alle paar meter daten neu-ziehen oder einen ganzen frame neu laden...