@@ -12,6 +12,8 @@ namespace Adnc.Shared.Application.Registrar;
12
12
13
13
public abstract partial class AbstractApplicationDependencyRegistrar
14
14
{
15
+ private static bool _theFirstCalled = true ;
16
+
15
17
/// <summary>
16
18
/// 注册Rest服务(跨微服务之间的同步通讯)
17
19
/// </summary>
@@ -25,12 +27,16 @@ protected virtual void AddRestClient<TRestClient>(string serviceName, List<IAsyn
25
27
if ( addressNode is null )
26
28
throw new NullReferenceException ( nameof ( addressNode ) ) ;
27
29
28
- Services . TryAddScoped < CacheDelegatingHandler > ( ) ;
29
- Services . TryAddScoped < TokenDelegatingHandler > ( ) ;
30
- Services . TryAddScoped < ConsulDiscoverDelegatingHandler > ( ) ;
31
- Services . TryAddSingleton < TokenFactory > ( ) ;
32
- Services . TryAddSingleton < ITokenGenerator , BasicTokenGenerator > ( ) ;
33
- Services . TryAddSingleton < ITokenGenerator , BearerTokenGenerator > ( ) ;
30
+ if ( _theFirstCalled )
31
+ {
32
+ _theFirstCalled = false ;
33
+ Services . AddScoped < CacheDelegatingHandler > ( ) ;
34
+ Services . AddScoped < TokenDelegatingHandler > ( ) ;
35
+ Services . AddScoped < ConsulDiscoverDelegatingHandler > ( ) ;
36
+ Services . AddSingleton < TokenFactory > ( ) ;
37
+ Services . AddSingleton < ITokenGenerator , BasicTokenGenerator > ( ) ;
38
+ Services . AddSingleton < ITokenGenerator , BearerTokenGenerator > ( ) ;
39
+ }
34
40
35
41
var registeredType = Configuration . GetValue ( NodeConsts . RegisteredType , "direct" ) ;
36
42
//注册RefitClient,设置httpclient生命周期时间,默认也是2分钟。
@@ -79,12 +85,16 @@ protected virtual void AddGrpcClient<TGrpcClient>(string serviceName, List<IAsyn
79
85
if ( addressNode is null )
80
86
throw new NullReferenceException ( nameof ( addressNode ) ) ;
81
87
82
- Services . TryAddScoped < CacheDelegatingHandler > ( ) ;
83
- Services . TryAddScoped < TokenDelegatingHandler > ( ) ;
84
- Services . TryAddScoped < ConsulDiscoverDelegatingHandler > ( ) ;
85
- Services . TryAddScoped < TokenFactory > ( ) ;
86
- Services . TryAddScoped < ITokenGenerator , BasicTokenGenerator > ( ) ;
87
- Services . TryAddScoped < ITokenGenerator , BearerTokenGenerator > ( ) ;
88
+ if ( _theFirstCalled )
89
+ {
90
+ _theFirstCalled = false ;
91
+ Services . AddScoped < CacheDelegatingHandler > ( ) ;
92
+ Services . AddScoped < TokenDelegatingHandler > ( ) ;
93
+ Services . AddScoped < ConsulDiscoverDelegatingHandler > ( ) ;
94
+ Services . AddSingleton < TokenFactory > ( ) ;
95
+ Services . AddSingleton < ITokenGenerator , BasicTokenGenerator > ( ) ;
96
+ Services . AddSingleton < ITokenGenerator , BearerTokenGenerator > ( ) ;
97
+ }
88
98
89
99
var registeredType = Configuration . GetValue ( NodeConsts . RegisteredType , "direct" ) ;
90
100
var switchName = "System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport" ;
0 commit comments