Je viens d'installer Visual Studio 2012 RC et j'ai essayé d'exécuter un service avec netHttpBinding permettant à WebSocket et d'obtenir l'erreur suivante
Cette plate-forme ne prend pas en charge les WebSockets côté serveur.
l'exemple que j'exécute est de 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
WebSockets peut-il fonctionner sur Windows 7 avec Visual Studio 2012 RC?
Non, les websockets sont uniquement pris en charge nativement par Windows dans Windows 8, quelle que soit la version de Visual Studio que vous utilisez.
http://www.paulbatum.com/2011/09/getting-started-with-websockets-in.html
Cela est dû à certains problèmes de bas niveau dans Windows 7 avec http.sys.
Il y a une chance qu'il soit rétroporté, mais semble peu probable: http://weblogs.asp.net/owscott/archive/2012/03/01/what-s-new-in-iis-8.aspx
Pour utiliser les websockets sur Windows 7, vous devrez écrire votre propre service.
Essayez d'utiliser ceci pour le côté client: http://websocket4net.codeplex.com/
et ceci côté serveur: http://superwebsocket.codeplex.com/
J'ai rencontré le même problème et l'ai résolu en utilisant Fleck . Simple à mettre en œuvre:
Un. NuGet ajoute une référence Fleck
Deux. Créez votre socket de serveur 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);
});
J'ai maintenant une API web ASP.NET Self Host sur un port et la connexion websockets qui fonctionne à côté.
J'ai développé un composant serveur .NET WebSocket qui utilise async/wait, prend en charge SSL et la compression, a intégré keep alive et bien d'autres choses.
À votre santé.