如何在 Asp .Net Core SignalR Hub 中获取不记名令牌?

Posted

技术标签:

【中文标题】如何在 Asp .Net Core SignalR Hub 中获取不记名令牌?【英文标题】:How to get the bearer token in the Asp .Net Core SignalR Hub? 【发布时间】:2020-11-20 08:38:08 【问题描述】:

我需要访问 Asp.Net Core SignalR Hub 中的不记名令牌原始字符串(令牌本身)。

我需要它,因为当我向其他需要来自我的集线器的令牌的微服务进行 HttpClient 调用时,我必须使用它。

我尝试创建具有 Token 属性的 Per-request 服务,但 SignalR 不使用 Per-Request 模式。令牌仅在客户端连接时发送,并非总是如此。

无论如何,我需要访问不记名令牌,但不知道如何。 请帮忙。

【问题讨论】:

【参考方案1】:

我需要访问 Asp.Net Core SignalR Hub 中的不记名令牌原始字符串(令牌本身)。

如果您为您的 ASP.NET Core SignalR 应用配置和使用bearer token authentication,以访问客户端在您的集线器方法中提供的令牌,您可以尝试:

 var accessToken = Context.GetHttpContext().Request.Query["access_token"];

测试结果

【讨论】:

以上是关于如何在 Asp .Net Core SignalR Hub 中获取不记名令牌?的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET Core的实时库: SignalR简介及使用

ASP.NET Core SignalR :SignalR Javascript 客户端

在 ASP.NET Core 中使用 SignalR

发现 ASP.NET Core SignalR

ASP.NET Core SignalR 下:SignalR Javascript 客户端

ASP.NET Core SignalR:集线器Hubs