private Task ProcessNegotiationRequest(HostContext context) { var claims = BuildClaims(context); // Redirect to Service var url = _endpoint.GetClientEndpoint(); var accessToken = _endpoint.GenerateClientAccessToken(claims); return(SendJsonResponse(context, GetRedirectNegotiateResponse(url, accessToken))); }
public NegotiationResponse Process(HttpContext context, string hubName) { var claims = BuildClaims(context); var request = context.Request; var originalPath = GetOriginalPath(request.Path); return(new NegotiationResponse { Url = _endpointProvider.GetClientEndpoint(hubName, originalPath, request.QueryString.HasValue ? request.QueryString.Value.Substring(1) : string.Empty), AccessToken = _endpointProvider.GenerateClientAccessToken(hubName, claims), // Need to set this even though it's technically protocol violation https://github.com/aspnet/SignalR/issues/2133 AvailableTransports = new List <AvailableTransport>() }); }