ASP.NET SignalR est une bibliothèque permettant à un serveur web d’envoyer des informations aux clients en temps réel. Durant le développement de l’application il est parfois intéressant de visualiser les échanges entre le serveur et les clients avec un outil tel que Fiddler.
Malheureusement après quelques échanges Fiddler ne montre pas grand chose :
Seul l’initialisation de la connexion est visible. Les échanges suivants se font via Web Socket et ne sont donc pas interceptés par Fiddler.
Il faut donc désactiver la prise en charge de Web Socket afin que SignalR utilise HTTP. Fiddler est ainsi capable d’intercepter les échanges entre le serveur et le client soient visibles :
public void Configuration(IAppBuilder app)
{
var transportManager = GlobalHost.DependencyResolver.Resolve<ITransportManager>() as TransportManager;
if (transportManager != null)
{
transportManager.Remove("webSockets");
}
HubConfiguration hubConfiguration = new HubConfiguration();
app.MapSignalR(hubConfiguration);
}
Et voilà le résultat :