Question

j'ai vu Signalr vs HTML5 WebSockets pour ASP.NET MVC CHAT Application Mais il ne répond pas à 100% à ma question car il est basé sur HTML5 Websockets, sur lequel Microsoft peut avoir étendu dans .NET 4.5 avec leur objet WebSocket.

Je me demande si la fonctionnalité WebSocket fait de même que SignalR et se repliera à des sondages longs lorsque WebSockets n'est pas disponible? Microsoft implémenterait sûrement la même technologie que SignalR dans leur approche de cette technologie?

Éditer:

Pour tous les autres qui s'interrogent à ce sujet, j'ai trouvé ce commentaire le plus utile pour comprendre le scénario et pourquoi j'utiliserai Signalr:

Eh bien, ils ne le sont pas vraiment. Jusqu'à présent, IIS et ASP.NET n'avaient rien intégré dans ce projet WebSockets pris en charge, le projet SignalR a donc dû le construire eux-mêmes. Maintenant que Microsoft fournit le signal de plomberie pourrait facilement passer à l'utilisation de l'implémentation de Microsoft, en plus ou à la place de la leur. SignalR est une abstraction sur les détails de la mise en œuvre, la classe WebScocket est le détail d'implémentation

Était-ce utile?

La solution

  1. Je me demande si la fonctionnalité WebSocket fait de même que SignalR et se repliera à des sondages longs lorsque WebSockets n'est pas disponible?

    WebSockets est un nouveau protocole indépendant des autres techniques de communication. De la RFC

    L'objectif de cette technologie est de fournir un mécanisme pour les applications basées sur le navigateur qui ont besoin d'une communication bidirectionnelle avec les serveurs Cela ne dépend pas de l'ouverture de plusieurs connexions HTTP (par exemple, en utilisant xmlhttprequest ou s et sondage long).

  2. Microsoft implémenterait sûrement la même technologie que SignalR dans leur approche de cette technologie?

    Pas s'ils veulent se conformer aux spécifications qu'ils ne le feront pas. Il n'y a certainement rien à empêcher Microsoft de développer une API de niveau supérieur similaire à SignalR qui abstrait les détails de la communication et offrirait un secours gracieux. Cependant, cette API hypothétique s'appuierait probablement au-dessus de Websocket classe par opposition à le remplacer.

Autres conseils

Je pense que SignalR est la voie à suivre, et va faire partie de .NET lui-même de toute façon (et probablement étendre / fusionner / remplacer la prise en charge des sockés Web). Il utilise des sockets Web lorsqu'il est pris en charge, et un piratage cohérent de sondage client quand ce n'est pas le cas, c'est donc la voie à suivre.

Mise à jour:

Étant donné que cette réponse est toujours votée, il convient de mentionner que SignalR fait désormais officiellement partie d'ASP.NET.

Vérifier http://asp.net/signalr

Mise à jour:.

SignalR est également ajouté à .NET Core comme @yazanpro l'a noté dans les commentaires.

C'est disponible Dans .NET Core 2.1, et a documentation officielle aussi bien.

SignalR utilise OWIN qui utilisera la connexion WebSockets si le navigateur prend en charge les prises Web et le sondage long si le navigateur ne prend pas en charge les lignes Web.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top