异步请求

///<summary>
/// HttpClient实现Post请求(异步)
/// </summary>
static async void dooPost()
{
string url = "http://localhost:52824/api/register";
//设置HttpClientHandler的AutomaticDecompression
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };
//创建HttpClient(注意传入HttpClientHandler)
using (var http = new HttpClient(handler))
{
//使用FormUrlEncodedContent做HttpContent
var content = new FormUrlEncodedContent(new Dictionary<string, string>()
{ {"Id",""},
{"Name","添加zzl"},
{"Info", "添加动作"}//键名必须为空
}); //await异步等待回应 var response = await http.PostAsync(url, content);
//确保HTTP成功状态值
response.EnsureSuccessStatusCode();
//await异步读取最后的JSON(注意此时gzip已经被自动解压缩了,因为上面的AutomaticDecompression = DecompressionMethods.GZip)
Console.WriteLine(await response.Content.ReadAsStringAsync());
} }
/// <summary>
/// HttpClient实现Get请求(异步)
/// </summary>
static async void dooGet()
{
string url = "http://localhost:52824/api/register?id=1";
//创建HttpClient(注意传入HttpClientHandler)
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip }; using (var http = new HttpClient(handler))
{
//await异步等待回应
var response = await http.GetAsync(url);
//确保HTTP成功状态值
response.EnsureSuccessStatusCode(); //await异步读取最后的JSON(注意此时gzip已经被自动解压缩了,因为上面的AutomaticDecompression = DecompressionMethods.GZip)
Console.WriteLine(await response.Content.ReadAsStringAsync());
}
}
/// <summary>
/// HttpClient实现Put请求(异步)
/// </summary>
static async void dooPut()
{
var userId = ;
string url = "http://localhost:52824/api/register?userid=" + userId; //设置HttpClientHandler的AutomaticDecompression
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };
//创建HttpClient(注意传入HttpClientHandler)
using (var http = new HttpClient(handler))
{
//使用FormUrlEncodedContent做HttpContent
var content = new FormUrlEncodedContent(new Dictionary<string, string>()
{
{"Name","修改zzl"},
{"Info", "Put修改动作"}//键名必须为空
}); //await异步等待回应 var response = await http.PutAsync(url, content);
//确保HTTP成功状态值
response.EnsureSuccessStatusCode();
//await异步读取最后的JSON(注意此时gzip已经被自动解压缩了,因为上面的AutomaticDecompression = DecompressionMethods.GZip)
Console.WriteLine(await response.Content.ReadAsStringAsync());
} 转载:https://blog.csdn.net/smartsmile2012/article/details/51613596

同步请求:

         /// <returns></returns>
public static string DoorAllList()
{
var result = "";
string url = "http://www.baidu.com/Api/GetDoorUserList";
//创建HttpClientHandler的AutomaticDecompression
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };
//创建一个httpClient;
using (var client = new HttpClient(handler))
{
//同步请求
var response = client.GetAsync(url);
//在这里会等待response返回。
var ret = response.Result;
//最终等待返回结果
result = ret.Content.ReadAsStringAsync().Result;
}
return result;
}

最新文章

  1. JAVA break终止循环,与continue进入下一次循环
  2. vlan知识
  3. poj Fishnet
  4. Webx框架:Valve详细解释
  5. Java内存回收 - 落日之心的日志 - 网易博客
  6. PDO(20161107)
  7. Python-模块使用-Day6
  8. Centos6.3下搭建apache+https服务
  9. C# 并行循环
  10. Typescript 学习笔记五:类
  11. react中实现点击跳转到新页面方法
  12. php命令行生成与读取配置文件
  13. uva-10110
  14. attack source code
  15. 对于Json的认识
  16. React-Native 之 FlexBox介绍和使用
  17. 关于Java的Properties类
  18. 20145312 实验二《 Java面向对象程序设计》
  19. BZOJ5289 &amp; 洛谷4437:[HNOI/AHOI2018]排列——题解
  20. webpack新版本4.12应用九(配置文件之多种配置类型)

热门文章

  1. Zookeeper的集群安装和配置
  2. Docker默认存储路径修改
  3. Rails generate的时候不生成assets和test
  4. 查看tomcat启动文件都干点啥---catalina.bat
  5. eval(data)和eval("("+data+")")的区别
  6. NYOJ1097 Ugly Numbers 【丑数】
  7. VIM-不常用或不知道的技巧
  8. Python数据处理——绘制函数图形以及数据拟合
  9. TensorFlow学习笔记 补充2—— 生成特殊张量
  10. php学习网站推荐