C#使用HttpClient进行http操作
生活随笔
收集整理的這篇文章主要介紹了
C#使用HttpClient进行http操作
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
簡介
在.Net 4.5中增加了一個(gè)新的System.Net.Http.HttpClient名字空間(在 System.Net.Http.dll 中)。其中 提供了用于發(fā)送 HTTP 請(qǐng)求和接收 HTTP 響應(yīng)的API。
基本操作
和以前的HttpWebRequest相比,HttpClient更加簡潔,下面就是一個(gè)下載www.baidu.com頁面的示例:
string uri = "http://www.baidu.com/";HttpClient client = new HttpClient();string body = await client.GetStringAsync(uri);除GetStringAsync()之外,還有GetByteArrayAsync()、GetStreamAsync()、PostAsync ()、DeleteAsync()等函數(shù),可用選擇使用。
一個(gè)重要的特點(diǎn)就是: 所有的函數(shù)操作都是異步的。
獲取響應(yīng)
最簡單的函數(shù)是HttpClient.GetStringAsync(), 用這個(gè)函數(shù)的時(shí)候,調(diào)用操作并不會(huì)阻塞,我們看不到HttpResponse的相關(guān)信息,如果需要看到Http響應(yīng)的信息,可以用如下標(biāo)準(zhǔn)方式:
Product product = null;HttpResponseMessage response = await client.GetAsync(path);if (response.IsSuccessStatusCode){product = await response.Content.ReadAsAsync<Product>();}return productt;這里使用HttpResponseMessage.
總結(jié)
以上是生活随笔為你收集整理的C#使用HttpClient进行http操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#中的is、as及转换
- 下一篇: c# char unsigned_dll