2012-11-13 109 views
5

從具有signalR連接/已連接集線器的頁面導航離開時出現以下錯誤消息。從頁面導航導致頁面加載錯誤時signalR中斷

「HTTP連接://本地主機:53604/signalr/signalr /連接運輸= serverSentEvents &的ConnectionId = 0b308c0d-2122-4e60-a9fa-f6e3f3eb1f4e & connectionData =%5B%7B%22name %22%3A%22packageactionstatus%20%22%7D%5D & tid = 9「在頁面加載時中斷

我明白,由於從頁面導航而導致連接丟失(這是好的),但是在導航離開當前頁面之前是否有安全的方式來停止連接?

回答

7

您可以關閉連接onunload的:

$.connection.hub.stop(); 

雖然我不知道爲什麼你關心這個錯誤的。

+0

我應該假設一旦我擁有一個連接的頁面,連接就被切斷了嗎?正確? – ShaneKm

+0

@ShaneKm。我所知道的你的假設是正確的。 HTTP是無狀態的。 – gdoron

+0

很酷。謝謝!!! – ShaneKm

3

爲此正常,你想陷阱onbeforeunload事件,要做到這一點,像這樣:

window.onbeforeunload = function() { 
    $.connection.hub.stop(); 
}; 

固定的問題,我用Firefox。