HttpClient请求发送的几种用法二:

public class HttpClientHelper
    {
        private static readonly HttpClientHelper _instance = new HttpClientHelper();
        private readonly HttpClient Client = new HttpClient();
        private HttpClientHelper()
        {
           // Client.BaseAddress =new Uri(Options.ServerUrl);
        }

        public static HttpClientHelper Instance
        {
            get { return _instance; }
        }

        public string Post(string processor, Dictionary<string, string> paras)
        {
            var req = new HttpRequestMessage();
            req.Headers.Clear();
            if (processor.Contains("smsGBK.aspx"))
            {
                //req.Encoding = Encoding.GetEncoding("GBK");
                req.Headers.Add("Content-Type", "application/x-www-form-urlencoded;charset=GB2312");
            }
            req.Headers.Add("ContentType", "application/x-www-form-urlencoded;charset=utf-8");
            req.Method = HttpMethod.Post;
            req.Content = new FormUrlEncodedContent(paras);
            req.RequestUri = new Uri(Options.ServerUrl+processor);
            var response = Client.SendAsync(req).Result;
            try
            {
                response.EnsureSuccessStatusCode();
            }
            catch (Exception ex)
            {
                Trace.TraceError("Error:{0}", ex.Message);
                return "";
            }
            return response.Content.ReadAsStringAsync().Result;
        }
    }

原文地址:https://www.cnblogs.com/rengke2002/p/6964085.html