当从页面导航时页面加载错误时,signalR中断

Sha*_*eKm 5 asp.net asp.net-mvc signalr signalr-hub signalr.client

当导航离开具有signalR连接/连接集线器的页面时,我收到以下错误消息.

连接到 "http:// localhost:53604/signalr/signalr/connect?transport = serverSentEvents&connectionId = 0b308c0d-2122-4e60-a9fa-f6e3f3eb1f4e&connectionData =%5B%7B%22name%22%3A%22packageactionstatus%20%22%7D 页面加载时,%5D&tid = 9" 被中断.

我确实理解由于离开页面导致连接丢失(这是好的)但是在导航离开当前页面之前是否有一种安全的方法来停止连接?

gdo*_*ica 7

您可以关闭onunload连接:

$.connection.hub.stop();
Run Code Online (Sandbox Code Playgroud)

虽然我不确定你为什么要关心这个错误.


Roc*_*lan 5

要正确执行此操作,您需要捕获onbeforeunload事件,并且您需要像这样执行此操作:

window.onbeforeunload = function () {
    $.connection.hub.stop();
};
Run Code Online (Sandbox Code Playgroud)

为我解决了 Firefox 的问题。