public static IServiceCollection AddInfrastructure(this IServiceCollection services, WebAssemblyHostConfiguration configuration, IWebAssemblyHostEnvironment hostEnvironment) { services.AddHttpClient(BaseService.HttpClientSecureLogicalName, client => client.BaseAddress = new Uri(hostEnvironment.BaseAddress)) .AddHttpMessageHandler <AccessTokenMessageHandler>() .AddHttpMessageHandler <CheckResponseMessageHandler>(); services.AddTransient(sp => sp.GetRequiredService <IHttpClientFactory>().CreateClient(BaseService.HttpClientSecureLogicalName)); services.AddHttpClient(BaseService.HttpClientLogicalName, client => client.BaseAddress = new Uri(hostEnvironment.BaseAddress)) .AddHttpMessageHandler <CheckResponseMessageHandler>(); services.AddTransient(sp => sp.GetRequiredService <IHttpClientFactory>().CreateClient(BaseService.HttpClientLogicalName)); var settings = new ClientSettings(); configuration.Bind("Settings", settings); services.AddSingleton(settings); services.AddTenantOpenidConnectPkce(); services.AddTransient <CheckResponseMessageHandler>(); services.AddFileReaderService(options => options.UseWasmSharedBuffer = false); services.AddBlazoredToast(); return(services); }
private static void ConfigureServices(IServiceCollection services, WebAssemblyHostConfiguration configuration, IWebAssemblyHostEnvironment hostEnvironment) { services.AddHttpClient(httpClientLogicalName, client => client.BaseAddress = new Uri(hostEnvironment.BaseAddress)) .AddHttpMessageHandler <AccessTokenMessageHandler>(); //.AddHttpMessageHandler(sp => //{ // var handler = sp.GetService<AccessTokenMessageHandler>(); // configuration.Bind("IdentitySettings", handler); // return handler; //}); services.AddScoped(sp => sp.GetRequiredService <IHttpClientFactory>().CreateClient(httpClientLogicalName)); services.AddOpenidConnectPkce(settings => { configuration.Bind("IdentitySettings", settings); }); }