public AuthenticationDelegatingHandler(
     AccessTokensCacheManager accessTokensCacheManager,
     ClientCredentials clientCredentials,
     string identityAuthority)
     : this(accessTokensCacheManager,
            clientCredentials,
            new HttpClient {
     BaseAddress = new Uri(identityAuthority)
 })
 {
 }
        public AuthenticationDelegatingHandler(
            AccessTokensCacheManager accessTokensCacheManager,
            ClientCredentials clientCredentials,
            HttpClient accessControlHttpClient)
        {
            _accessTokensCacheManager = accessTokensCacheManager;
            _clientCredentials        = clientCredentials;
            _accessControlHttpClient  = accessControlHttpClient;

            if (_accessControlHttpClient.BaseAddress == null)
            {
                throw new AuthenticationHandlerException($"{nameof(HttpClient.BaseAddress)} should be set to Identity Server url");
            }

            if (_accessControlHttpClient.BaseAddress?.AbsoluteUri.EndsWith("/") == false)
            {
                _accessControlHttpClient.BaseAddress = new Uri(_accessControlHttpClient.BaseAddress.AbsoluteUri + "/");
            }
        }