日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

.net core 中使用httpclient,HttpClientFactory的问题

發布時間:2024/7/5 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .net core 中使用httpclient,HttpClientFactory的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Microsoft 在.Net Framework 4.5中引入了HttpClient,并且是在.NET服務器端代碼中使用Web API的最常用方法。但它有一些嚴重的問題,如釋放HttpClient對象不立即關閉套接字,太多實例影響性能和單個的HttpClient或共享HttpClient實例不尊重DNS生存時間(TTL)設置。當并沒有大批量或者并發調用時,選擇?HttpClient 還行:

private static readonly HttpClient HttpClient = new HttpClient();//定義var res = await HttpClient.GetStringAsync(url);//調用

 .net core 2.1 引入了HttpClientFactory的一些問題,當高并發時可以使用HttpClientFactory,例子鏈接里有,我只介紹一個在類庫中使用方法:

1.類庫中建封裝類:

using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Threading.Tasks;namespace Oss.Utils {public class HttpClientFactory{public HttpClient Client { get; private set; }public HttpClientFactory(HttpClient httpClient){

? ? ? ? ? ? ? ? ? ? ? ? ? ?httpClient.BaseAddress = new Uri("https://api.github.com/");
? ? ? ? ? ? ? ? ? ? ? ? ? httpClient.DefaultRequestHeaders.Add("Accept", "application/vnd.github.v3+json");
? ? ? ? ? ? ? ? ? ? ? ? ? httpClient.DefaultRequestHeaders.Add("User-Agent", "HttpClientFactory-Sample");
? ? ? ? ? ? ? ? ? ? ? ? ? httpClient.Timeout = TimeSpan.FromSeconds(60);
? ? ? ? ? ? ? ? ? ? ? ? ?Client = httpClient;

}} }

2.其他類中調用就好了:

private static readonly HttpClient HttpClient = new HttpClient();private static readonly HttpClientFactory HttpClientFactory = new HttpClientFactory(HttpClient); ... ... ...var res = await HttpClientFactory.Client.GetStringAsync(url);

okay,調用完成。

說明一下:在.net core 項目中使用HttpClientFactory的時候,要是在Startup.cs注冊時,要安裝:

Microsoft.Extensions.Http? ?nuget包,

直接搜索即可。

具體使用方法和參考鏈接如下:https://www.cjavapy.com/article/150/

轉載于:https://www.cnblogs.com/fishyues/p/10150461.html

總結

以上是生活随笔為你收集整理的.net core 中使用httpclient,HttpClientFactory的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。