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

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

49 голосов
/ 13 февраля 2011

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

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

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

Ответы [ 10 ]

13 голосов
/ 10 марта 2011

Сэр SuperWebSocket включает реализацию сервера WebSocket и реализацию клиента WebSocket. Страница проекта SuperWebSocket

7 голосов
/ 25 июня 2011

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

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

5 голосов
/ 10 июля 2014

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

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

Для тех, кто отрицает этот вопрос, выборка в основном сфокусирована на подключении к сервисам WebSocket, что является еще одним важным примером использования приложения C #, ориентированного на сеть.

2 голосов
/ 24 сентября 2013

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

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

2 голосов
/ 26 июня 2011

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

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

1 голос
/ 04 марта 2012

Если вы ищете высокопроизводительный корпоративный сервер WebSocket, взгляните на Kaazing . Kaazing полностью поддерживает .NET, включая Xamarin.

Вот пошаговое руководство для AMQP: Контрольный список: создание клиентов Microsoft .NET AMQP .

[Раскрытие: я работаю на Каазинг.]

1 голос
/ 24 марта 2011

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

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

0 голосов
/ 25 марта 2014

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

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

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

0 голосов
/ 13 февраля 2011

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...