淺析SignalR連線生命週期的幾個重要方法
參照官網:http://www.asp.net/signalr/overview/guide-to-the-api/handling-connection-lifetime-events
一般我們只會處理hub類的方法,重寫OnConnected, OnDisconnected,和 OnReconnected 方法
public override Task OnConnected() { // 在這新增你的程式碼. // 例如:在一個聊天程式中,記錄當前連線的使用者ID和名稱,並標記使用者線上. // 在該方法中的程式碼完成後,通知客戶端建立連線,客戶端程式碼 // start().done(function(){//你的程式碼}); return base.OnConnected(); } public override Task OnDisconnected() { // 在這新增你的程式碼. // 例如: 標記使用者離線 // 刪除連線ID與使用者的關聯. return base.OnDisconnected(); } public override Task OnReconnected() { // 在這新增你的程式碼. // 例如:你可以標記使用者離線後重新連線,標記為線上 return base.OnReconnected(); }
每當瀏覽器導航到一個新的頁面,就會建立一個新的連線,SignalR 將在 OnConnected () ,執行OnDisconnected ()方法
SignalR在建立新連線後,總是建立新的連線ID,
當連線暫停後,SignalR呼叫OnReconnected() 方法使連線恢復,
()方法呼叫後,SignalR不能自動重新連線,例如瀏覽器導航到了新的網頁,因此,可以指定使用者事件順序為: OnConnected, OnReconnected, OnDisconnected;
或者 OnConnected, OnDisconnected 事件,可以查閱如何處理SignalR生命週期
由龐順龍最後編輯於:3年前
內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。
相關文章
- 淺析 React 生命週期React
- Java類的生命週期淺析Java
- Android Service生命週期淺析Android
- 淺析 UIApplication 生命週期的一些 delegate 方法UIAPP
- 【連載】淺析React生命週期之一:掛載階段React
- Android 之 Activity 生命週期的淺析(二)Android
- Android 之 Activity 生命週期淺析(一)Android
- 淺析spring——IOC 之 分析 Bean 的生命週期SpringBean
- 安卓MVP淺析及Presenter的生命週期問題安卓MVP
- Salesforce 生命週期管理(一)應用生命週期淺談Salesforce
- 淺談vue —— 生命週期Vue
- React 生命週期淺談React
- 淺析依賴注入框架的生命週期(以 InversifyJS 為例)依賴注入框架JS
- 深入淺出 Gin 生命週期
- 淺談 ViewModel 的生命週期控制View
- 從幾個例項來記憶Activity的生命週期
- Servlet生命週期與方法Servlet
- 淺談資料庫生命週期資料庫
- Android Activit生命週期方法Android
- View生命週期與Activity生命週期的關係View
- API版本控制的生命週期方法 - nordicapisAPI
- 生命週期
- 開發方法---軟體生命週期
- [譯]如何使用React生命週期方法React
- 《一個程式猿的生命週期》有感
- Flutter 的生命週期Flutter
- SQL的生命週期SQL
- Laravel的生命週期Laravel
- vue的生命週期Vue
- Fragment的生命週期Fragment
- App的生命週期APP
- View的生命週期View
- Servlet的生命週期Servlet
- bean的生命週期Bean
- HTTP長連線和短連線原理淺析HTTP
- JAVA面試題 執行緒的生命週期包括哪幾個階段?Java面試題執行緒
- 《一個程式猿的生命週期》的感悟
- React v16.3 版本新生命週期函式淺析及升級方案React函式