从集线器检查客户端连接

时间:2020-07-17 10:31:01

标签: c# asp.net-core .net-core signalr


目前,我正在使用Signalr进行AspnetCore项目,并且遇到了这个问题:
-客户端连接到集线器,并调用函数A()
-Hub运行A(),但会阻止来自该客户端的任何其他呼叫
-客户端调用函数B()以停止函数A(),但不会停止
我读到Signalr会按顺序对待呼叫,因此我尝试从客户端断开呼叫,但集线器仍然认为他已连接(当集线器正在运行A()时)
所以我的问题是:有没有办法检查客户端是否仍从集线器连接?像ping之类的东西?
谢谢

1 个答案:

答案 0 :(得分:0)

您想要的是取消令牌行为。您想让客户传递一个cancellationtoken,这就是您在调用方法B()时试图存档的内容。

但是SignalR不支持此行为,因为您可以阅读herehere