private static void AppendCredentials(HttpRequestMessage request, EasyMSAuthInfo credentials)
 {
     if (!string.IsNullOrEmpty(credentials.AccessToken))
     {
         request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", credentials.AccessToken);
     }
 }
示例#2
0
        public EasyMSClient(IHttpClientFactory httpClientFactory, EasyMSAuthInfo authInfo)
        {
            AuthInfo = authInfo;

            var gateway = new EasyMSAPIGateway(httpClientFactory);

            OAuth = new OAuth(gateway);
        }
示例#3
0
        private static IEasyMSClient GetClient(EasyMSAuthInfo credentials)
        {
            var serviceCollection = new ServiceCollection();

            serviceCollection.AddEasyMSClient(credentials);

            var provider = serviceCollection.BuildServiceProvider();

            return(provider.GetService <EasyMSClient>());
        }
 public EasyMSBearerAuthenticationHandler(EasyMSAuthInfo credentials)
 {
     _credentials = credentials;
 }
        public static IHttpClientBuilder AddEasyMSHttpClient(this IServiceCollection serviceCollection, EasyMSAuthInfo credentials)
        {
            var version   = typeof(EasyMSClient).Assembly.GetName().Version.ToString();
            var userAgent = new ProductInfoHeaderValue("EasyMS.API", version);

            serviceCollection.TryAddSingleton(credentials);
            serviceCollection.TryAddTransient <EasyMSBearerAuthenticationHandler>();

            var builder = serviceCollection.AddHttpClient(EasyMSClient.HttpClientName);

            builder.AddHttpMessageHandler <EasyMSBearerAuthenticationHandler>();
            builder.ConfigureHttpClient(c => { c.DefaultRequestHeaders.UserAgent.Add(userAgent); });

            return(builder);
        }
        public static IServiceCollection AddEasyMSClient(this IServiceCollection serviceCollection, EasyMSAuthInfo credentials)
        {
            serviceCollection.AddSingleton <EasyMSClient>();

            serviceCollection.AddEasyMSHttpClient(credentials);

            return(serviceCollection);
        }