c# - 如何使 SignalR 服务器仅对特定 URL 使用长轮询?
问题描述
我有一个带有一些网页和 RESTful API 的服务器,我使用 SignalR 主动报告网页上的某些状态,以获得更好的用户体验。但是,似乎该服务器中公开的所有 URL 都使用 SignalR 长轮询机制,这使我的 API 客户端连接始终处于活动状态,这会导致一些奇怪的问题。
例如,我有以下 APIS:/A
, /B
, /C
. 我已经设置了以下配置,以便 SignalR 可以工作并从以下位置推送数据/A
:
app.UseSignalR(routes =>
{
routes.MapHub<PlatformNotifyHub>(
"/A", (option) => { option.Transports = Microsoft.AspNetCore.Http.Connections.HttpTransportType.LongPolling; }
);
});
但似乎 SignalR 使所有 API 都像长轮询一样工作,在我的示例中包括 /B 和 /C。
我该如何解决这个问题,以便 /B 和 /C 可以像普通的 HTTP 一样工作?
解决方案
推荐阅读
- uwp - 运行 win 10 IOT 的树莓派与 arduino 之间如何通信?
- hibernate - Hibernate 和 MariaDB 仅将时间戳存储到秒精度?
- c++ - 如何初始化 const std::vector
- vba - Excel VBA:单击两个按钮(形状)在电子表格打开时运行两个单独的 VBA 脚本
- java - 如何从其他类获取对节点的引用?
- json - 如何将 Azure JSON 模板导入 Visio Diagram?
- r - R xml2从xbrl文件中提取元素
- graph-tool - graph-tool - 单独图表之间的边缘?
- php - 正则表达式转换 kbt-y102_9999_0001v-s001v => N1v-s1v
- hadoop - Kafka Druid 与 Streaming Analytics Manager 的集成