Подтвердить что ты не робот

Клиент HTML5 WebSockets для .NET.

Итак, Я нашел эту удивительную вещь под названием HTML5 WebSockets, новый API. Это все еще в версии DRAFT, но довольно хорошо поддерживается. Полнодуплексная двунаправленная связь. Я знаю, как использовать его с помощью JavaScript, есть API. Но если я хочу использовать клиент WebSocket в моем приложении С#/.NET, как это сделать?

Например, JavaScript: http://bohuco.net/blog/2010/07/html5-websockets-example/

Существуют ли какие-либо специальные клиентские библиотеки для WebSockets в .NET?

4b9b3361

Ответ 2

Недавно я провел некоторое исследование этого процесса, создав клиентскую библиотеку .NET и Silverlight для Pusher. Я нашел следующие клиентские библиотеки и проекты WebSocket:

На данный момент реализация Microsoft, вероятно, самая простая в использовании, и у нее также есть библиотека Silverlight. SuperWebSockets имеет проект Silverlight в источнике, но не в последнем падении.

Ответ 3

Начиная с .NET 4.5 клиенты WebSocket поддерживаются через System.Net.WebSockets.ClientWebSocket

Вы можете просмотреть или загрузить образец приложения С# с веб-сайта кода MSDN: http://code.msdn.microsoft.com/WebSockets-middle-tier-5b2972ce/sourcecode.

В опроснике вопроса выборка в основном сосредоточена на подключении к службам WebSocket, что является еще одним важным вариантом использования сетевого приложения С#.

Ответ 5

Я не пробовал реализацию Microsoft, но я думаю, что Xsockets имеет самое быстрое время установки (пакет nuget). Менее 3 минут от начала до запуска полного socketserver + client (приложение для демонстрационного чата). Youtube demo

Он имеет резервную копию Silverlight и flash для старых браузеров.

Ответ 6

Вы можете использовать http://www.nuget.org/packages/Microsoft.AspNet.SignalR/ или http://www.asp.net/signalr

ASP.NET SignalR - это новая библиотека для разработчиков ASP.NET, которая упрощает разработку веб-функций в режиме реального времени. SignalR позволяет осуществлять двунаправленную связь между сервером и стороной. Теперь серверы могут мгновенно перенаправлять контент на клиентский доступ, когда он становится доступным. SignalR поддерживает веб-сокеты и возвращается к другим совместимым технологиям для старых браузеров. SignalR включает в себя API для управления соединениями (например, подключение и отключение событий), группирование соединений и авторизацию.

Ответ 7

Друг и я только что выпустил очень легкий, скудный, масштабируемый сервер веб-серверов С#: https://github.com/Olivine-Labs/Alchemy-Websockets

Мы построили его для использования в нашей онлайн-игре, поэтому нашей главной задачей было быстрое и эффективное управление множеством соединений. Это из моих исследований, наиболее эффективно там. И, в качестве бонуса, он поддерживает флеш-сети как резерв для пользователей без браузеров с поддержкой websocket.

Ответ 9

Да, вам понадобится сервер-посредник, который поддерживает протокол WebSocket. Этот сервер может быть написан на любом языке, включая .NET. Здесь один для .NET, но это действительно может быть любой язык. Что касается вашего сайта, это может быть ASP.NET и клиентская часть в javascript, которая будет разговаривать с сервером WebSocket.

Ответ 10

Я развертываю XSockets.net. Структура работает неплохо, она поддерживается, разработчики предлагают платную поддержку, но для нормальных проблем они также довольно активны здесь, в SO, и они много помогают.

Они предлагают API-интерфейс .net для реализации сокетов, а также javascript API для клиента.

В качестве резюме я могу порекомендовать его.

Ответ 11

У вас есть несколько вариантов

  • Сверните свой собственный - спецификация довольно проста
  • Используйте другую экспериментальную версию, такую ​​как сервер веб-сокетов С#
  • Посмотрите на подход MS WCF