Сервер Websocket, клиент не может рукопожатие
m тестирование с использованием последней версии Chrome (websocket версия 13).
Вот'Моя простая клиентская страница расположена по адресу:http://127.0.0.1/folder/default.aspx
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);
};
И здесь'мой слушатель (c #)
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");
}
Когда я запускаю сервер, а затем загружаю клиентскую страницу, он говорит только."connection closed"
Может кто-нибудь сказать, пожалуйста, как правильно выполнить это рукопожатие? Насколько я могу судить из документации и предыдущих вопросов, ответм отправка обратно клиенту выглядит правильно.