34

Visual Studio 2012 RCをインストールし、netHttpBindingを使用してWebSocketを有効にしてサービスを実行しようとすると、次のエラーが発生します。

このプラットフォームは、サーバー側のWebSocketをサポートしていません。

私が実行しているサンプルは、http://blogs.microsoft.co.il/blogs/idof/archive/2012/03/01/what-s-new-in-wcf-4-5-websocket-support-partからのものです。 -1-of-2.aspx

WebSocketはVisualStudio2012RCを搭載したWindows7で動作しますか?

4

2 に答える 2

46

いいえ、WebSocketは、使用しているVisual Studioのバージョンに関係なく、Windows8のWindowsでのみネイティブにサポートされています。

http://www.paulbatum.com/2011/09/getting-started-with-websockets-in.html

これは、http.sysを使用したWindows7の低レベルの問題が原因です。

バックポートされる可能性がありますが、可能性は低いようです: http ://weblogs.asp.net/owscott/archive/2012/03/01/what-s-new-in-iis-8.aspx

Windows 7でWebSocketを使用するには、独自のサービスを作成する必要があります。

クライアントサイドでこれを使用してみてください:http ://websocket4net.codeplex.com/

サーバー側の場合:http ://superwebsocket.codeplex.com/

于 2012-06-15T11:56:39.657 に答える
16

私は同じ問題に遭遇し、Fleckを使用してそれを解決しました。実装は簡単です。

1。NuGet追加フレックリファレンス

二。Webサーバーソケットを作成します

// Create Websocket server
websocketServer = new Fleck.WebSocketServer("ws://localhost:82");
websocketServer.Start(socket =>
{
    socket.OnOpen = () => Console.WriteLine("Open!");
    socket.OnClose = () => Console.WriteLine("Close!");
    socket.OnMessage = message => socket.Send(message);
});

これで、1つのポートにASP.NETセルフホストWeb APIがあり、それに沿ってWebSocket接続が実行されています。

于 2013-03-28T10:24:52.153 に答える