Не удается получить контекст соединения SignalR при использовании атрибута Authorize для метода-концентратора.
Я могу получить доступ к HttpContext
из моего пользовательского атрибута Authorization на моем концентраторе:
[Authorize("MyAuthorizationPolicy")]
public class ChatHub : Hub
В моем AuthorizationHandler
я могу ввести IHttpContextAccessor
, чтобы получить HttpRequest
, который дает мне доступ к токену (который находится в заголовке).
Но потому что вызов методане использует HttpRequest
, мне нужно попасть в контекст запроса SignalR, когда я применяю атрибут Authorization к моему методу :
[Authorize("MyAuthorizationPolicy")]
public async Task Join(Guid roomGuid)
Очевидно, мой экземпляр IHttpContextAccessor
дает мне ноль HttpContext
.Как я могу ввести «SignalRConnectionContextAccessor
»?:)
(https://github.com/aspnet/Docs/issues/11331)