【发布时间】:2020-12-29 23:33:37
【问题描述】:
我们有三个 .Net Core 应用程序,一个 Blazor 服务器前端 (A) 调用一个 Web 应用程序 (B),它调用另一个 Web 应用程序 (C)。
用于通过 SignalR Core 进行通信的应用程序 A 和 C。我们不得不将应用程序 B 置于这些(商业原因)的中间。
我想知道我们是否仍然可以通过应用程序 B 进行这种通信?
我们可以使用 B 作为 SignalR 代理吗?如果可以,如何使用?
非常感谢。
【问题讨论】:
-
您可以同时将 App B 作为 SignalR 客户端和服务器。应用 B 连接到应用 A,并订阅消息,并将它们中继到从应用 C 连接的客户端。
-
嗨,Sherif,我一直在思考这些问题——你能演示如何在同一系统上的客户端和服务器之间中继消息吗? - 我对 SignalR 很陌生。
-
连接到同一中心服务器的客户端应用程序可以相互通信。首先要开始使用 SignalR Hub 和 SignalR JavaScript client,然后将 SignalR 集成到您的应用中。
-
我曾经为 signalR 1 制作了一个代理服务器,在那里我注入了一个自定义的
IHubManager。我能够挂上GetHubMethod并接听电话。如果我有时间,我可以尝试挖掘它并为 .net Core 重写它。 -
@Jason,这将非常有用。
标签: c# asp.net-core web-applications signalr