簡體   English   中英

SignalR 集線器從服務器端關閉連接

[英]SignalR Hub close connection from server side

我正在開發一個項目,我們使用 signalr 與客戶進行通信。 我遇到了客戶端連接到服務器並且他正在使用 VPN 的情況。 每當他失去互聯網連接時,他顯然失去了與集線器的連接,但從服務器端看起來連接仍然處於活動狀態並且沒有觸發 OnDisconnectedAsync 方法(半開 websocket?)。 當他重新連接時,他正在使用具有不同 connectionId 的新連接連接到集線器,並且舊連接仍然掛起等待關閉。

我的問題是我可以從服務器端以某種方式關閉此連接嗎?

我實現了 ping/pong 功能,它在 websocket 上向客戶端發送消息並等待響應,如果 30 秒后我沒有從客戶端收到任何消息,我想關閉此連接。

您是否可能覆蓋了一些超時方法? 看看微軟的這篇文章: https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/handling-connection-lifetime-events#timeoutkeepalive它解釋了生命周期連接和超時功能。 也許這有幫助。

祝你好運

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM