这里是以ASP.NET Core为例说明SignalR中的Caller使用场景。初学者往往都会忽略到这一点儿,造到的后果就是发送的消息接收不到。一般们后台往前端发送消息会有以下几种方式,注意收藏。
1、对所有已连接的客户端发送消息
_hub.Clients.All.SendAsync(methodName, msg);
2、对指定的用户组发送消息
_hub.Clients.Group(goupName).SendAsync(methodName, msg);
3、对指定的用户发送消息
_hub.Clients.User(user).SendAsync(methodName, msg);
4、对当前会话回复消息
_hub.Clients.Caller.SendAsync(methodName, msg);
每一项展开都会很多内容,这里只是做一个简单的汇总,详细信息可以参见官方的使用文档。
https://docs.microsoft.com/zh-cn/aspnet/core/signalr/groups?view=aspnetcore-5.0