您好,登錄后才能下訂單哦!
小編給大家分享一下Asp.net core怎么使用SignalR推送消息過程,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
1)、SignalR簡介
ASP.NET Core SignalR 是為 ASP.NET 開發人員提供的一個庫,可以簡化開發人員將實時 Web 功能添加到應用程序的過程。
實時 Web 功能是指這樣一種功能:當所連接的客戶端變得可用時服務器代碼可以立即向其推送內容,而不是讓服務器等待客戶端請求新的數據。
2)、SignalR主要用途:
它出現的主要用途:可以用在聊天室、Web實時推送消息 (Real-Push-Message)、單點和多點通訊、掃碼登陸、甚至可以結合其他技術用來做視頻聊天等等。
適合 SignalR 的候選項:
需要從服務器進行高頻率更新的應用。 示例包括游戲、社交網絡、投票、拍賣、地圖和 GPS 應用。
儀表板和監視應用。 示例包括公司儀表板、即時銷售更新或旅行警報。
協作應用。 協作應用的示例包括白板應用和團隊會議軟件。
需要通知的應用。 社交網絡、電子郵件、聊天、游戲、旅行警報和很多其他應用都需使用通知。
SignalR 提供用于創建服務器到客戶端SignalR 的 API。 RPC 從服務器端 .NET Core 代碼調用客戶端上的函數。 提供多個受支持的平臺,其中每個平臺都有各自的客戶端 SDK。 因此,RPC 調用所調用的編程語言有所不同。
以下是 ASP.NET Core SignalR 的一些功能:
自動處理連接管理。
同時向所有連接的客戶端發送消息。 例如聊天室。
向特定客戶端或客戶端組發送消息。
對其進行縮放,以處理不斷增加的流量。
下面重點給大家介紹下Asp.net core 使用SignalR推送消息。
環境:
.net core3.1
ConfigureServices
Configure
public class SignalRHub: Hub { private readonly IHubContext<SignalRHub> _hubContext = null; public SignalRHub(IHubContext<SignalRHub> context) { _hubContext = context; } public override Task OnConnectedAsync() Console.WriteLine($"{Context.ConnectionId}已連接"); return base.OnConnectedAsync(); public void ReadClientMsgMethod(string msg) Console.WriteLine($"{ Context.ConnectionId}客戶端發來信息:" + msg); /// <summary> /// 全員發送 /// </summary> /// <param name="msg"></param> /// <returns></returns> public string CallAllClients(string msg) Console.WriteLine("============全員發送=========="); Clients.All.SendAsync("CallByHub", "全員發送>>>>>>>>>>" + msg); return MethodInfo.GetCurrentMethod()?.Name + ""; //發送消息--發送給所有連接的客戶端 public Task SendMessage(string msg) return _hubContext.Clients.All.SendAsync("CallByHub", msg); }
看完了這篇文章,相信你對“Asp.net core怎么使用SignalR推送消息過程”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。