在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 () {...}
编辑-添加括号