在C#客户端和Web客户端中-如何告诉signalR-“尝试除websocket之外的所有内容”?

我的网络代码中包含以下内容:

 window.hubReady = $.connection.hub.start({ transport: 'longPolling' });


但这只是JavaScript和longpolling;我正在寻找JS和C#客户端的配置,以仅删除websocket作为传输。如何才能做到这一点?

最佳答案

在服务器上:

 public class Startup
 {
     public void Configuration(IAppBuilder app)
     {
         DisableWebSockets(GlobalHost.DependencyResolver);

         HubConfiguration hubConfiguration = new HubConfiguration();
         hubConfiguration.EnableDetailedErrors = true;
         app.MapSignalR(hubConfiguration);
     }

     public static void DisableWebSockets(IDependencyResolver resolver)
     {
         var manager = resolver.Resolve<ITransportManager() as TransportManager;
         manager.Remove("webSockets");
     }
 }


在客户端上:

$.connection.hub.start({ transport: ['serverSentEvents', 'foreverFrame', 'longPolling'] }).done(function () {...}


编辑-添加括号

07-27 21:23