From c559fa4335d7f8909319f1c5d5a075c484353943 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Tue, 9 Aug 2022 20:25:25 +0800 Subject: [PATCH] Add AbpInvocationHandler --- .../Abp/Http/Client/Dapr/AbpDaprClientOptions.cs | 14 ++++---------- .../Http/Client/Dapr/AbpHttpClientDaprModule.cs | 3 +-- .../Abp/Http/Client/Dapr/AbpInvocationHandler.cs | 14 ++++++++++++++ 3 files changed, 19 insertions(+), 12 deletions(-) create mode 100644 framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpInvocationHandler.cs diff --git a/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpDaprClientOptions.cs b/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpDaprClientOptions.cs index b2504acd9c..e6fa2d35dd 100644 --- a/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpDaprClientOptions.cs +++ b/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpDaprClientOptions.cs @@ -1,24 +1,18 @@ -using Dapr.Client; -using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.DependencyInjection; namespace Volo.Abp.Http.Client.Dapr; public class AbpDaprClientOptions { - public Action DaprHttpClientBuilderAction { get; set; } + public Action DaprHttpClientBuilderAction { get; set; } public AbpDaprClientOptions() { DaprHttpClientBuilderAction = DefaultDaprHttpClientBuilder; } - private void DefaultDaprHttpClientBuilder(string serviceName, IHttpClientBuilder clientBuilder, string daprEndpoint) + private void DefaultDaprHttpClientBuilder(string serviceName, IHttpClientBuilder clientBuilder) { - Check.NotNull(daprEndpoint, nameof(daprEndpoint)); - - clientBuilder.AddHttpMessageHandler(() => new InvocationHandler - { - DaprEndpoint = daprEndpoint - }); + clientBuilder.AddHttpMessageHandler(); } } \ No newline at end of file diff --git a/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpHttpClientDaprModule.cs b/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpHttpClientDaprModule.cs index 1b24510842..374fca198e 100644 --- a/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpHttpClientDaprModule.cs +++ b/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpHttpClientDaprModule.cs @@ -12,14 +12,13 @@ public class AbpHttpClientDaprModule : AbpModule { public override void ConfigureServices(ServiceConfigurationContext context) { - var daprOptions = context.Services.ExecutePreConfiguredActions(); var daprClientOptions = context.Services.ExecutePreConfiguredActions(); PreConfigure(options => { options.ProxyClientBuildActions.Add((_, clientBuilder) => { - daprClientOptions.DaprHttpClientBuilderAction(_, clientBuilder, daprOptions.HttpEndpoint); + daprClientOptions.DaprHttpClientBuilderAction(_, clientBuilder); }); }); } diff --git a/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpInvocationHandler.cs b/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpInvocationHandler.cs new file mode 100644 index 0000000000..a3397b55e4 --- /dev/null +++ b/framework/src/Volo.Abp.Http.Client.Dapr/Volo/Abp/Http/Client/Dapr/AbpInvocationHandler.cs @@ -0,0 +1,14 @@ +using Dapr.Client; +using Microsoft.Extensions.Options; +using Volo.Abp.Dapr; +using Volo.Abp.DependencyInjection; + +namespace Volo.Abp.Http.Client.Dapr; + +public class AbpInvocationHandler : InvocationHandler, ITransientDependency +{ + public AbpInvocationHandler(IOptions daprOptions) + { + DaprEndpoint = daprOptions.Value.HttpEndpoint; + } +} \ No newline at end of file