Note that there are some explanatory texts on larger screens.

plurals
  1. POWebsocket server, client can't handshake
    primarykey
    data
    text
    <p>I'm testing using the latest version of Chrome (websocket version 13).</p> <p>Here's my simple client page located at <code>http://127.0.0.1/folder/default.aspx</code>:</p> <pre><code>&lt;script type="text/javascript"&gt; var socket = new WebSocket('ws://localhost:8181/websession'); socket.onopen = function () { alert('handshake successfully established. May send data now...'); }; socket.onclose = function () { alert('connection closed'); }; socket.onmessage = function(msg) { alert(msg); }; &lt;/script&gt; </code></pre> <p>And here's my listener (c#)</p> <pre><code>var listener = new TcpListener(IPAddress.Loopback, 8181); listener.Start(); while (true) { Console.WriteLine("Listening..."); using (var client = listener.AcceptTcpClient()) using (var stream = client.GetStream()) using (var reader = new StreamReader(stream)) using (var writer = new StreamWriter(stream)) { writer.WriteLine("HTTP/1.1 101 Web Socket Protocol Handshake"); writer.WriteLine("Upgrade: WebSocket"); writer.WriteLine("Connection: Upgrade"); writer.WriteLine("WebSocket-Origin: http://127.0.0.1"); writer.WriteLine("WebSocket-Location: ws://localhost:8181/websession"); writer.WriteLine(""); } Console.WriteLine("Finished"); } </code></pre> <p>When I run the server, and then load the client page it only says <code>"connection closed"</code>.</p> <p>Could someone please tell me how to get this handshake performing correctly? As far as I can tell from documentation and previous questions, the response I'm sending back to the client looks correct.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload