zoukankan      html  css  js  c++  java
  • 【HttpClient】常用的3个请求方式

    前言

    经常用到,做个记录

    代码

            /// <summary>
            /// HttpGet请求
            /// </summary>
            /// <param name="url"></param>
            /// <returns></returns>
            static async Task<string> HttpGet(string url)
            {
                HttpResponseMessage response = await _client.GetAsync(url);
    
                string result = string.Empty;
                if (response.IsSuccessStatusCode)
                    result = await response.Content.ReadAsStringAsync();
    
                return result;
            }
    
            /// <summary>
            /// HttpPost请求,FromForm接收
            /// </summary>
            /// <param name="url"></param>
            /// <param name="dic"></param>
            /// <returns></returns>
            static async Task<string> HttpPostForm(string url, Dictionary<string, string> dic)
            {
                var httpContent = new MultipartFormDataContent();
                foreach (var para in dic)
                    httpContent.Add(new StringContent(para.Value), para.Key);
    
                HttpResponseMessage response = await _client.PostAsync(url, httpContent);
    
                string result = string.Empty;
                if (response.IsSuccessStatusCode)
                    result = await response.Content.ReadAsStringAsync();
    
                return result;
            }
    
            /// <summary>
            /// HttpPost请求,FromBody接收
            /// </summary>
            /// <param name="url"></param>
            /// <param name="dic"></param>
            /// <returns></returns>
            static async Task<string> HttpPostBody(string url, Dictionary<string, object> dic)
            {
                var p = System.Text.Json.JsonSerializer.Serialize(dic);//对象序列化为Json字符串
    
                HttpContent httpContent = new StringContent(p);
                httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
    
                HttpResponseMessage response = await _client.PostAsync(url, httpContent);
    
                string result = string.Empty;
                if (response.IsSuccessStatusCode)
                    result = await response.Content.ReadAsStringAsync();
    
                return result;
            }
  • 相关阅读:
    VisualStudioAddIn2017.vsix的下载安装和使用
    数独计算程序的比较
    Ajax
    VSTO作品:OutlookMailViewer的下载和使用
    VB6实现Excel多工作簿数据合并
    组件中 data 为什么是一个函数?
    谈谈你对 keep-alive 的了解?
    父组件可以监听到子组件的生命周期吗?
    Vue 的父组件和子组件生命周期钩子函数执行顺序?
    谈谈你对 Vue 生命周期的理解?
  • 原文地址:https://www.cnblogs.com/masonblog/p/15637224.html
Copyright © 2011-2022 走看看