CPU
Lieutenant
- Registriert
- Jan. 2006
- Beiträge
- 704
Hallöle,
folgendes: ich habe eine HTML-Seite mit Ajax und ein Serverskript. In Java kann man ein TCP/IP-Socket aufbauen und dann zwischen Client kommunizieren. Dies Kommunikation geht auch Eventbasiert (d.h. wenn der Server was schickt, wird der Client "Informiert"). Nun muss ich das mit Ajax umsetzen.
Da HTTP ein zustandsloses Protokoll ist und nach der Übertragung der Website die Verbindung getrennt wird ist ja nur eine "lineare" Kommunikation möglich - d.h. wenn ich etwas wissen will, dann frage ich nach. Wenn der Server mir was sagen will, geht das nicht ...
Und kann man nun mit Ajax es so tricksen, dass man eine dauerhafte Verbindung zum Server(-skript) herstellt und der Server einem über diese Weise Nachrichten zukommen lassen kann? Mit einer zweiten "linearen" Ajaxverbindung kann ich ja dann Daten zum Server senden.
Geht das mit keep-alive oder gibt es da so ein Timeout? Denn solange der Nutzer die Applikation nutzt muss die Verbindung stehen.
Gruß,
CPU
P.S.: Alternativ könnte man natürlich auch alle x Millisekunden abfragen, ob sich etwas neues ergeben hat, aber das ist mir zu unsauber (Zeitverlust, Traffic ...).
folgendes: ich habe eine HTML-Seite mit Ajax und ein Serverskript. In Java kann man ein TCP/IP-Socket aufbauen und dann zwischen Client kommunizieren. Dies Kommunikation geht auch Eventbasiert (d.h. wenn der Server was schickt, wird der Client "Informiert"). Nun muss ich das mit Ajax umsetzen.
Da HTTP ein zustandsloses Protokoll ist und nach der Übertragung der Website die Verbindung getrennt wird ist ja nur eine "lineare" Kommunikation möglich - d.h. wenn ich etwas wissen will, dann frage ich nach. Wenn der Server mir was sagen will, geht das nicht ...
Und kann man nun mit Ajax es so tricksen, dass man eine dauerhafte Verbindung zum Server(-skript) herstellt und der Server einem über diese Weise Nachrichten zukommen lassen kann? Mit einer zweiten "linearen" Ajaxverbindung kann ich ja dann Daten zum Server senden.
Geht das mit keep-alive oder gibt es da so ein Timeout? Denn solange der Nutzer die Applikation nutzt muss die Verbindung stehen.
Gruß,
CPU
P.S.: Alternativ könnte man natürlich auch alle x Millisekunden abfragen, ob sich etwas neues ergeben hat, aber das ist mir zu unsauber (Zeitverlust, Traffic ...).