SignalR在使用.NET客户端时传输

时间:2014-11-18 16:36:38

标签: c# .net signalr

我正在考虑在某些WCF和WPF应用程序中使用SignalR。

在阅读SignalR时,据我所知,它支持4种不同的传输类型:

  • 的WebSocket
  • 服务器已发送事件
  • 永远的框架
  • Ajax Long Polling

如果我有一个WPF或WCF应用程序使用SignalR .net客户端与正常的SignalR服务器(如SignalR样本)交谈,使用了哪种传输类型?

1 个答案:

答案 0 :(得分:1)

SignalR .NET客户端最多支持3个传输:

  1. WebSockets(仅限.NET 4.5)

    SignalR客户端2.2.0版也将支持universal Windows apps中的WebSocket传输。

  2. 服务器发送的事件

  3. 长轮询

  4. 还有默认的自动传输,它将尝试使用最佳的传输方式。例如,它最初会尝试使用WebSockets启动连接,但如果失败,它将尝试使用服务器发送的事件,然后进行长轮询。

    .NET客户端永远不会尝试使用永久帧传输,因为该传输与服务器发送的事件非常相似。两个传输之间的主要区别在于,永久帧传输将其有效负载包装在HTML中,以支持使用iframe加载有效负载的旧浏览器。

    您可以在this guide中了解有关.NET客户端和提供的传输的更多信息。