抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

先贴两个可能用得到的链接

创建

有三个构造函数

·HttpClient()

·HttpClient(HttpMessageHandler)

·HttpClient(HttpMessageHandler, Boolean)

常用方法

方法 用途
GetAsync(String) 向String(URL)发送GET请求(异步)
PostAsync(String, HttpContent) 向String(URL)发送POST请求,内容为HttpContext(异步)

以上皆返回Task<HttpResponseMessage>(服务器响应信息)

使用GET请求

1
2
3
4
5
6
7
8
9
var httpClient = new HttpClient();
var response = await httpClient.GetAsync("https://www.baidu.com");

if (response.IsSuccessStatusCode) // 当返回200时执行以下内容
{
Console.WriteLine("Status: " + response.StatusCode); // 输出状态码
Console.WriteLine("Head: " + response.Headers); // 输出返回的Header内容
Console.WriteLine("Body: " + await response.Content.ReadAsStringAsync()); // 输出返回的内容
}

注意:可能需要引用System.Net.Http

使用POST请求

1
2
3
4
5
6
7
8
var httpClient = new HttpClient();
var result = await httpClient.PostAsync("{请求链接}", new StringContent(
JsonConvert.SerializeObject(new { Name = "abc", id = 1 }),
Encoding.UTF8,
"application/json"));
// { Name = "abc", id = 1 }为请求参数
result.EnsureSuccessStatusCode(); // 状态码不为200就报错
Console.WriteLine(await result.Content.ReadAsStringAsync());

注意:可能需要引用System.Net.HttpNewtonsoft.Json

评论