c# 【MVC】WebApi通过HttpClient来调用Web Api接口
- 作者: 五速梦信息网
- 时间: 2026年04月04日 13:49
/// <summary>
/// HttpClient实现Post请求(异步)
/// </summary>
static async void dooPost()
{
string url = "http://localhost:52824/api/register";<br/>
//设置HttpClientHandler的AutomaticDecompression<br/>
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };<br/>
//创建HttpClient(注意传入HttpClientHandler)<br/>
using (var http = new HttpClient(handler))<br/>
{<br/>
//使用FormUrlEncodedContent做HttpContent<br/>
var content = new FormUrlEncodedContent(new Dictionary<string, string>()<br/>
{ {"Id","6"},<br/>
{"Name","添加zzl"},<br/>
{"Info", "添加动作"}//键名必须为空<br/>
});
//await异步等待回应
var response = await http.PostAsync(url, content);<br/>
//确保HTTP成功状态值<br/>
response.EnsureSuccessStatusCode();<br/>
//await异步读取最后的JSON(注意此时gzip已经被自动解压缩了,因为上面的AutomaticDecompression = DecompressionMethods.GZip)<br/>
Console.WriteLine(await response.Content.ReadAsStringAsync());<br/>
}
}
/// <summary>
/// HttpClient实现Get请求(异步)
/// </summary>
static async void dooGet()
{
string url = "http://localhost:52824/api/register?id=1";<br/>
//创建HttpClient(注意传入HttpClientHandler)<br/>
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };
using (var http = new HttpClient(handler))<br/>
{<br/>
//await异步等待回应<br/>
var response = await http.GetAsync(url);<br/>
//确保HTTP成功状态值<br/>
response.EnsureSuccessStatusCode();
//await异步读取最后的JSON(注意此时gzip已经被自动解压缩了,因为上面的AutomaticDecompression = DecompressionMethods.GZip)<br/>
Console.WriteLine(await response.Content.ReadAsStringAsync());<br/>
}<br/>
}
/// <summary>
/// HttpClient实现Put请求(异步)
/// </summary>
static async void dooPut()
{
var userId = 1;<br/>
string url = "http://localhost:52824/api/register?userid=" + userId;
//设置HttpClientHandler的AutomaticDecompression<br/>
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };<br/>
//创建HttpClient(注意传入HttpClientHandler)<br/>
using (var http = new HttpClient(handler))<br/>
{<br/>
//使用FormUrlEncodedContent做HttpContent<br/>
var content = new FormUrlEncodedContent(new Dictionary<string, string>()<br/>
{<br/>
{"Name","修改zzl"},<br/>
{"Info", "Put修改动作"}//键名必须为空<br/>
});
//await异步等待回应
var response = await http.PutAsync(url, content);<br/>
//确保HTTP成功状态值<br/>
response.EnsureSuccessStatusCode();<br/>
//await异步读取最后的JSON(注意此时gzip已经被自动解压缩了,因为上面的AutomaticDecompression = DecompressionMethods.GZip)<br/>
Console.WriteLine(await response.Content.ReadAsStringAsync());<br/>
}<br/>
}
相关文章
-
C# conn.open() 外部表不是预期的格式( 读取EXCEL文件出错)
C# conn.open() 外部表不是预期的格式( 读取EXCEL文件出错)
- 互联网
- 2026年04月04日
-
C# DataTable操作,转载
C# DataTable操作,转载
- 互联网
- 2026年04月04日
-
C# Entity Framework并发处理
C# Entity Framework并发处理
- 互联网
- 2026年04月04日
-
C# .NET 获取枚举值的自定义属性
C# .NET 获取枚举值的自定义属性
- 互联网
- 2026年04月04日
-
C# .NET 获取枚举值的自定义属性(特性注释备注)信息
C# .NET 获取枚举值的自定义属性(特性注释备注)信息
- 互联网
- 2026年04月04日
-
C# 使用SqlDataAdapter和DataSet来访问数据库
C# 使用SqlDataAdapter和DataSet来访问数据库
- 互联网
- 2026年04月04日






