mirror of https://github.com/abpframework/abp.git
3 changed files with 19 additions and 12 deletions
@ -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<string, IHttpClientBuilder, string> DaprHttpClientBuilderAction { get; set; } |
|||
public Action<string, IHttpClientBuilder> 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<AbpInvocationHandler>(); |
|||
} |
|||
} |
|||
@ -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<AbpDaprOptions> daprOptions) |
|||
{ |
|||
DaprEndpoint = daprOptions.Value.HttpEndpoint; |
|||
} |
|||
} |
|||
Loading…
Reference in new issue