Skip to content

Commit a2e9a00

Browse files
committed
公开各个Formatter
1 parent 0b6d23f commit a2e9a00

File tree

5 files changed

+288
-272
lines changed

5 files changed

+288
-272
lines changed

WebApiClient/Defaults/HttpClient.cs

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,6 @@ public class HttpClient : IHttpClient
3131
/// </summary>
3232
private long pendingCount = 0L;
3333

34-
/// <summary>
35-
/// HttpClientHandler提示者
36-
/// </summary>
37-
private readonly Func<HttpClientHandler> handlerProvider;
38-
3934
/// <summary>
4035
/// 获取关联的Http处理对象
4136
/// </summary>
@@ -82,28 +77,13 @@ public long MaxResponseContentBufferSize
8277
}
8378
}
8479

85-
/// <summary>
86-
/// 默认的HttpClient
87-
/// </summary>
88-
public HttpClient() :
89-
this(() => new DefaultHttpClientHandler())
90-
{
91-
}
9280

9381
/// <summary>
9482
/// 默认的HttpClient
9583
/// </summary>
96-
/// <param name="handlerProvider">HttpClientHandler提供者,要求每调用一次返回一个新实例</param>
97-
/// <exception cref="ArgumentNullException"></exception>
98-
public HttpClient(Func<HttpClientHandler> handlerProvider)
84+
public HttpClient()
9985
{
100-
if (handlerProvider == null)
101-
{
102-
throw new ArgumentNullException(nameof(handlerProvider));
103-
}
104-
105-
this.handlerProvider = handlerProvider;
106-
this.Handler = handlerProvider.Invoke();
86+
this.Handler = this.CreateHttpClientHandler();
10787
this.client = new System.Net.Http.HttpClient(this.Handler);
10888
}
10989

@@ -199,7 +179,7 @@ public bool SetProxy(IWebProxy proxy)
199179
/// </summary>
200180
private void InitWithoutProxy()
201181
{
202-
var handler = this.handlerProvider.Invoke();
182+
var handler = this.CreateHttpClientHandler();
203183
this.CopyProperties(this.Handler, handler);
204184
handler.UseProxy = false;
205185
handler.Proxy = null;
@@ -212,6 +192,15 @@ private void InitWithoutProxy()
212192
this.Handler = handler;
213193
}
214194

195+
/// <summary>
196+
/// 创建HttpClientHandler的新实例
197+
/// </summary>
198+
/// <returns></returns>
199+
protected virtual HttpClientHandler CreateHttpClientHandler()
200+
{
201+
return new DefaultHttpClientHandler();
202+
}
203+
215204
/// <summary>
216205
/// 复制source的属性到target
217206
/// </summary>

0 commit comments

Comments
 (0)