zoukankan      html  css  js  c++  java
  • 通过HttpClient来调用Web Api接口

    /// <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","6"},  
                 {"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 = 1;  
        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());  
        }  
    }  
  • 相关阅读:
    UIImagePickerController 获取相片视频
    plist文件Boolean类型读写方法
    stringstream 用法
    C++11中提供了std::bind
    图像的亮度和对比度调节
    windows C++ 全局异常捕捉函数
    windows 下多线程
    C++11 Lambda表达式(匿名函数)
    图像亮度调节--幂次变换
    SEH:结构化异常处理 学习
  • 原文地址:https://www.cnblogs.com/softwyy/p/8684792.html
Copyright © 2011-2022 走看看