【问题标题】:API Server as SignalR clientAPI 服务器作为 SignalR 客户端
【发布时间】:2020-06-09 03:08:45
【问题描述】:

我有一个由 Web 服务器提供服务的 ASP.NET MVC Core 应用程序。 Web 服务器有一个 SignalR 集线器,并从专用 API 服务器获取其数据。是否可以将 Web 客户端和 API 服务器注册为 SignalR 客户端,以便 API 服务器可以将数据直接推送到 Web 客户端?

【问题讨论】:

  • 为什么web服务器和api服务器之间需要SignalR?你不能在他们之间做简单的http调用吗?
  • API 服务器应该能够将信息推送到 Web 服务器,然后再将其推送到 Web 客户端。我不想不断轮询 API 服务器以获取新信息。
  • 我明白了,但是为什么 web 服务器不能暴露一个 Post 端点来接收这个信息呢?为什么一定是 SignalR?
  • 另外,Api Server 可以通过队列向 Web Server 发送消息。这两种技术都允许您最终将 SignalR 服务器与 Web 服务器分开,如果您需要它来控制缩放。

标签: asp.net-core-mvc signalr


【解决方案1】:

是的。从同一主机,将IHubContext<YourHub> 注入您的控制器类,然后您可以从那里向任何连接的客户端发送消息,请在此处查看更多信息:https://docs.microsoft.com/en-us/aspnet/core/signalr/hubcontext

从不同的主机,使用 SignalR 客户端,请参阅此处:https://docs.microsoft.com/en-us/aspnet/core/signalr/dotnet-client

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多