C# 如何在Azure Signal R中向经过身份验证的用户发送通知?

C# 如何在Azure Signal R中向经过身份验证的用户发送通知?,c#,azure,asp.net-core,azure-signalr,C#,Azure,Asp.net Core,Azure Signalr,net核心项目。我有azure广告认证。我有一个功能,用户将上传文件,一旦文件存储在azure存储中,我想通过azure signal r通知用户。我已经实现了这个流程,但我只想向上传文件的用户发送通知。当前,如果有五个用户正在使用我的应用程序,那么只有一个用户上传了文件,那么我只想向该用户发送通知,而不是向所有经过身份验证的用户发送通知 public class MapUploadNotificationHub : Hub { public override Task OnConnec

net核心项目。我有azure广告认证。我有一个功能,用户将上传文件,一旦文件存储在azure存储中,我想通过azure signal r通知用户。我已经实现了这个流程,但我只想向上传文件的用户发送通知。当前,如果有五个用户正在使用我的应用程序,那么只有一个用户上传了文件,那么我只想向该用户发送通知,而不是向所有经过身份验证的用户发送通知

public class MapUploadNotificationHub : Hub
{
    public override Task OnConnectedAsync()
    {
        return Clients.Caller.SendAsync("broadcastMessage", "_SYSTEM_", $"{Context.User.Identity.Name} JOINED");
    }
    public void BroadcastMessage(string message)
    {
        Clients.Caller.SendAsync("broadcastMessage", message);
    }

    public void Echo(string message)
    {
        var echoMessage = $"{message} (echo from server)";
        Clients.Client(Context.ConnectionId).SendAsync("echo", echoMessage + " (echo from server)");
    }
}
这是我的hub类,在下面的方法中我发送通知

 await hub.Clients.All.SendAsync("BroadcastMessage", FileDetails);

当用户上传文件时,我想只向该用户发送通知,而不是向将使用该应用程序的所有人发送通知。这种情况下,它将如何工作,我无法理解。当web应用启动时,它是否使用唯一的连接id或基于身份验证机制与服务器建立连接。我完全糊涂了。有人能帮我理解这一点吗?任何帮助都将不胜感激。谢谢

概括地说,您需要以某种方式将上传请求与其中一个客户端关联的标识符Hi Aluan,我有react前端应用程序和后端.net核心后端,我有azure AD隐式流身份验证。所以Token就足够了,这听起来像是一种方式。谢谢Aluan,但我对connexion id和用户身份验证有点混淆。在我的例子中,我只想向上传文件的用户发送通知。那么基于令牌,我如何发送通知呢?如果您使用索赔,我可以知道如何处理吗
Clients.User(User).SendAsync
概括地说,您需要以某种方式将上传请求与其中一个客户端关联起来的标识符Hi Aluan,我有react前端应用程序和后端.net核心后端,我有azure AD隐式流身份验证。所以Token就足够了,这听起来像是一种方式。谢谢Aluan,但我对connexion id和用户身份验证有点混淆。在我的例子中,我只想向上传文件的用户发送通知。那么基于令牌,我如何发送通知呢?如果您使用索赔,我可以知道如何处理吗<代码>客户端.User(User).SendAsync