【发布时间】:2018-01-07 07:25:47
【问题描述】:
在我的一个 .net 核心项目中,我必须调用 REST api 来向客户端发送一些数据。总是有超过 9-10 个具有不同 api 的客户端具有自己的域和自定义标头。如果我每次都创建 HttpClient 对象,则会影响性能,因为每次都会创建和关闭新的 TCP 连接。如果我将使用单例设计模式创建单个 HttpClient 对象,那么每个客户端都将使用相同的基本 url 和默认标头。任何人都可以提出解决此问题的方法。每次新的客户端 api 来进行集成时,我都不想去创建新的 HttpClient。
【问题讨论】:
-
如果您将代码粘贴在小提琴中,我们可以帮助您整理代码吗?
-
我还没有写出实际的代码。但这是我打算使用的样本。这里 url 可以是任何客户端的 api public Output CallApi(string url) { var _httpClient = SingletonHttpClient.Instance; if(_httpClient != null) { using (var response = _httpClient.GetAsync(url).Result) { return response.Content.ConvertToObject
-
@ToddMenier 谢谢。你给了很好的建议
标签: .net-core httpclient dotnet-httpclient rest-client