Frage

Ich habe viele Socket-Beispiele getestet, und die Kommunikation zwischen ihnen war ziemlich einfach: Die Sockel wird geöffnet und bleibt bis zum Schließen von dabei und es werden keine Informationen angelassen, außer dem, den Sie gesendet haben.

Mit HTML5-Netzsteckdosen sind diese beiden Momente anders.

Zunächst, sobald der Client-HTML5-Buchse mit der Server-Buchse herstellt, sendet er eine Reihe von Informationen:

generasacodicetagpre.

Wie interpretieren Sie diese Informationen?Was soll ich damit machen?

Zum zweiten Mal, wenn ich ein paar Zeichenfolge von Debugging Server (Hercules Setup Utility) sende, wird das generationspoDicetagcode-Ereignis von Socket nicht abgefeuert, und die Client-Buchse schließt die Verbindung unmittelbar danach.

Ich vermute, dass HTML5-Netzsteckdose etwas Handshake erwartet, bevor er verwendet werden kann.Wo ich darüber lesen kann?

btw: Ich verwende Ruby als serverseitige Sprache.

War es hilfreich?

Lösung

Ich habe viele Web-Sockel-Beispiele getestet ...

Von dem, was Sie beschreiben, verwenden Sie keine "Web-Sockel", sondern einfach "Sockets", z.Direkter TCP / IP.WebSockets (z. B. was Sie "HTML-Web-Sockets" anrufen) sind unterschiedlich: Sie werden verwendet, um etwas Sockel wie über eine etablierte HTTP-Verbindung herzustellen.Daher sehen Sie die HTTP-Abfrage mit dem Header "Upgrade: WebSocket" mit der "SEC-WebSocket-Key" usw.

Nach dem Einrichten der Verbindung (Server sendet Antwort mit Code 101) Die WebSocketverbindung hat ihre eigene Rahmen- und Verwürzung der Daten, sodass Sie sie nicht einfach mit den normalen Sockel-Tools verwenden können.

siehe http://tools.ietf.org/html/rfc6455 für die Spezifikation undVerwenden Sie "WebSockets" als das Schlüsselwort, wenn Sie nach mehr Dokumentation suchen, Verwendung ...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top