Проблема с Websocket с IIS 8 Express в Windows 7

Я попытался создать обработчик для веб-сокета, но context.IsWebSocketRequest возвращается всегда false и не работает с IIS 8 Express в Windows 7.

Как включить модуль для websocket или какой-либо шаг, который я пропустил? У меня есть приложение VS 2012 с динамическим URL-адресом IIS Express.

Пожалуйста, помогите тем же.

Ответ 2

Короткий ответ: вы можете писать приложения против WebSockets в Windows 7 с помощью IIS 8 Express, но вы не можете на самом деле проверить их. Он требует Windows 8 или Windows Server 2012.

Из IIS 8.0 Express ReadMe:

Поддержка WebSocket

IIS 8.0 Express поддерживает запись приложений WebSocket. Для получения дополнительной информации см. Спецификацию протокола WebSocket или тему пространства имен System.Net.WebSockets на веб-сайте Microsoft MSDN.

Функции Windows Server 2012 и Windows 8, которые не работают в операционных системах верхнего уровня

Есть несколько функций, которые требуют специфической архитектуры для Windows Server 2012 и Windows 8 Client, которые не будут работать вниз при установке IIS 8.0 Express при более ранних операциях системы:

Обозначение имени сервера (SNI)
Центральный магазин сертификатов
Функциональность WebSocket

Затем из System.Net.WebSockets запись MSDN (выделено мной):

Некоторые классы в пространстве имен System.Net.WebSockets поддерживаются в Windows 7, Windows Vista с пакетом обновления 2 (SP2) и Windows Server 2008. Тем не менее, единственные публичные реализации клиентских и серверных WebSockets поддерживаются в Windows 8 и Windows Server 2012 Классы и элементы класса в пространстве имен System.Net.WebSockets, которые поддерживаются в Windows 7, Windows Vista с пакетом обновления 2 (SP2) и Windows Server 2008, являются абстрактными классами. Это позволяет разработчику приложения наследовать и расширять эти абстрактные классы с фактической реализацией клиентских WebSockets.