【问题标题】:SignalR - Detect Transport Method for a Connection on Server SideSignalR - 检测服务器端连接的传输方法
【发布时间】:2013-03-24 19:14:06
【问题描述】:

您能否在服务器端辨别给定 SignalR 连接使用哪种传输方法? (WebSockets、SSE、长轮询等?​​)

【问题讨论】:

    标签: signalr


    【解决方案1】:

    在 Hub 中,您可以通过查看请求的查询字符串来检测正在使用的传输:

    Context.QueryString["transport"]
    

    这将评估为“webSockets”、“serverSentEvents”、“foreverFrame”或“longPolling”。

    理想情况下,您的代码不应依赖于所使用的传输方式,因为 SignalR 已为您抽象了该传输方式。但是,这可能对日志记录等有用。

    【讨论】:

      【解决方案2】:

      对于 ASP.NET SignalR 2.0 版,您可以使用$.connection.hub.transport.name 打印出传输的名称。它将评估为“serverSentEvents”和其他传输。

      【讨论】:

      • 对客户来说非常方便。尽管按照 OP 的要求,服务器端并不方便。
      猜你喜欢
      • 2014-05-26
      • 2019-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-09
      • 1970-01-01
      相关资源
      最近更新 更多