OSS.Http項目對于.Net Standard標準庫的支持已經(jīng)遷移完畢,OSS開源系列兩個最底層的類庫已經(jīng)具備跨運行時支持的能力。由于OSS.Http類庫是幾年前我參照RestSharp的思路,完成的一個輕量型Http請求框架。因為時間較久底層使用的還是HttpWebRequest,這次基本上是完全重構(gòu),這篇文章主要包含 1. HttpClient的介紹,2. 重構(gòu)的思路, 3. 容易遇到的問題。
一. httpclient的基本介紹
HttpClient應該是在.net framework4.5版本左右引用的新功能,在此之前常用的是HttpWebRequest,相比較而言,前者更加的簡單清晰,最重要的是完全支持.net standard API,這也是我選擇它的重要原因。
HttpClient在結(jié)構(gòu)上做了很大的調(diào)整,并且是完全異步的實現(xiàn),可以說從底層上完成了異步的支持,這里先介紹對應的幾個主要類:
1. HtttpRequestMessage
請求的基本信息,請求地址,請求動作等,此值是在HttpClient發(fā)起請求的方法中當參數(shù)傳入,與他對應的是響應 HttpResponseMessage