【问题标题】:SignalR example using Persistent Connection client?使用持久连接客户端的 SignalR 示例?
【发布时间】:2016-01-30 14:34:38
【问题描述】:

我正在研究 SignalR,我不想编写聊天客户端。相反,我想创建一个具有持久连接的主机并让 C# .NET 客户端(不是网页)与之通信。有没有编写持久连接客户端的好例子?

或者- Hub 真的是唯一的出路吗?

【问题讨论】:

    标签: c# signalr


    【解决方案1】:

    不,Hub API 不是唯一的方法。网上有很多例子展示了如何使用 PersistentConnections(例如 SignalR repo 中的this one - 这里的客户端是 JavaScript,但是当使用 C# 时,您只需订阅 Received 事件 - 任何时候 SignalR 客户端接收到一条消息,它将调用 Received 事件处理程序)。 Hubs 基本上是一个更高级别的 API,它使 SignalR 的使用更加容易。持久连接是关于发送/接收原始字符串,而集线器是关于从服务器或其他方式调用客户端上的函数。然而,集线器被实现为持久连接之上的一个层,其中消息是 JSON 格式而不是原始字符串,客户端和服务器都会相应地解释它们。

    我在 SignalR 协议的 my post 中描述了持久连接和集线器(有关持久连接,请参阅持久连接消息部分)

    【讨论】:

    • 谢谢。我还发现这个例子很有帮助:github.com/SignalR/SignalR/wiki/…
    • 我故意没有给你指出这个例子——它有点过时了,它使用了.Wait(),这在很多情况下是不正确的,因为它会导致死锁(虽然它应该是很好的控制台应用程序) .
    • 谢谢你的警告!从 2012 年到现在,Owin/SignalR/WebAPI 生态系统确实发生了很大变化。了解一些更有帮助的示例包含一些遗留信息会有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-06
    • 1970-01-01
    相关资源
    最近更新 更多