ranio Ответов: 1

Как установить клиентскую часть сервера веб-сокетов в windows 7 с помощью C#?


Я пытаюсь настроить заглушку веб-сокета клиента сервера, но после запуска веб-сокета сервера при попытке использовать то же самое с помощью веб-сокета клиента.Я запускаю свою машину в Windows 7 и использую framework 4 & 4.5 версии (VS 2013 code done)

Получение исключения, что протокол веб-сокета не поддерживается на этой платформе.

Переданный API содержит http:, ws:

Напр.:
сторона сервера

http://10.15.1.6/Socket_Test

сторона клиента

ИС://10.15.1.6/Socket_Test/



Мне нужно установить код заглушки в windows 7.

Что я уже пробовал:

серверный:
  websocketServer.Start("http://10.15.1.6/Socket_Test/");
      
            Console.WriteLine("Press any key to exit...");
            Console.ReadKey();

HttpListener httpListener = new HttpListener();
            httpListener.Prefixes.Add(httpListenerPrefix);
            httpListener.Start();
            Console.WriteLine("Listening...");

            while (true)
            {
                HttpListenerContext httpListenerContext = await httpListener.GetContextAsync();
                if (httpListenerContext.Request.IsWebSocketRequest)
                {
                    ProcessRequest(httpListenerContext);
                }
                else
                {
                    httpListenerContext.Response.StatusCode = 400;
                    httpListenerContext.Response.Close();
                }
            }


клиентский:
static void Main(string[] args)
       {
           Connect("ws://10.15.1.6/Socket_Test/").Wait();
           Console.WriteLine("Press any key to exit...");
           Console.ReadKey();
       }

       public static async Task Connect(string uri)
       {
           Thread.Sleep(1000); //wait for a sec, so server starts and ready to accept connection..

           ClientWebSocket webSocket = null;
           try
           {
               webSocket = new ClientWebSocket();
               await webSocket.ConnectAsync(new Uri(uri), CancellationToken.None);
               await Task.WhenAll(Receive(webSocket), Send(webSocket));
           }
           catch (Exception ex)
           {
               Console.WriteLine("Exception: {0}", ex);
           }
           finally
           {
               if (webSocket != null)
                   webSocket.Dispose();
               Console.WriteLine();
               Console.WriteLine("WebSocket closed.");
           }
       }

1 Ответов

Рейтинг:
0

Richard MacCutchan

См. раздел Примечания по адресу Пространство Имен System.Net.WebSockets[^].