• 工具类--HttpUtils


    using System;
    using System.Text;
    using System.IO;
    using System.Net;
    using System.Threading;
    
    namespace Common
    {
        public class Utils
        {
    
            #region URL请求数据
    
            /// <summary>
            /// HTTP POST方式请求数据
            /// </summary>
            /// <param name="url">URL.</param>
            /// <param name="param">POST的数据</param>
            /// <returns></returns>
            public static string HttpPost(string url, string param)
            {
                HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";
                request.Accept = "*/*";
                request.Timeout = 15000;
                request.AllowAutoRedirect = false;
    
                StreamWriter requestStream = null;
                WebResponse response = null;
                string responseStr = null;
    
                try
                {
                    requestStream = new StreamWriter(request.GetRequestStream());
                    requestStream.Write(param);
                    requestStream.Close();
    
                    response = request.GetResponse();
                    if (response != null)
                    {
                        StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
                        responseStr = reader.ReadToEnd();
                        reader.Close();
                    }
                }
                catch (Exception)
                {
                    throw;
                }
                finally
                {
                    request = null;
                    requestStream = null;
                    response = null;
                }
    
                return responseStr;
            }
    
            /// <summary>
            /// HTTP POST方式请求数据
            /// </summary>
            /// <param name="url">URL.</param>
            /// <param name="param">POST的数据</param>
            /// <returns></returns>
            public static string HttpPostJson(string url, string param)
            {
                HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
                request.Method = "POST";
                request.ContentType = "application/json;charset=UTF-8";
                request.Accept = "*/*";
                request.Timeout = 30000;
                request.AllowAutoRedirect = false;
    
                StreamWriter requestStream = null;
                WebResponse response = null;
                string responseStr = null;
    
                try
                {
                    requestStream = new StreamWriter(request.GetRequestStream());
                    requestStream.Write(param);
                    requestStream.Close();
    
                    response = request.GetResponse();
                    if (response != null)
                    {
                        StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
                        responseStr = reader.ReadToEnd();
                        reader.Close();
                    }
                }
                catch (Exception)
                {
                    throw;
                }
                finally
                {
                    request = null;
                    requestStream = null;
                    response = null;
                }
    
                return responseStr;
            }
    
            /// <summary>
            /// HTTP GET方式请求数据.
            /// </summary>
            /// <param name="url">URL.</param>
            /// <returns></returns>
            public static string HttpsGetWhthoutCertify(string url)
            {
                HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
                request.Method = "GET";
                //request.ContentType = "application/x-www-form-urlencoded";
                request.Accept = "*/*";
                request.Timeout = 15000;
                request.AllowAutoRedirect = false;
                request.ProtocolVersion = HttpVersion.Version10;
                WebResponse response = null;
                string responseStr = null;
    
                try
                {
                    response = request.GetResponse();
    
                    if (response != null)
                    {
                        StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
                        responseStr = reader.ReadToEnd();
                        reader.Close();
                    }
                }
                catch (Exception)
                {
                    throw;
                }
                finally
                {
                    request = null;
                    response = null;
                }
    
                return responseStr;
            }
    
            /// <summary>
            /// HTTP GET方式请求数据.
            /// </summary>
            /// <param name="url">URL.</param>
            /// <returns></returns>
            public static string HttpGet(string url)
            {
                HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
                request.Method = "GET";
                //request.ContentType = "application/x-www-form-urlencoded";
                request.Accept = "*/*";
                request.Timeout = 15000;
                request.AllowAutoRedirect = false;
                WebResponse response = null;
                string responseStr = null;
    
                try
                {
                    response = request.GetResponse();
    
                    if (response != null)
                    {
                        StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
                        responseStr = reader.ReadToEnd();
                        reader.Close();
                    }
                }
                catch (Exception)
                {
                    throw;
                }
                finally
                {
                    request = null;
                    response = null;
                }
    
                return responseStr;
            }
    
            #endregion
    
            #region 生成订单号
    
            private static object _lock = new object();
            /**
              * 根据当前系统时间加随机序列来生成订单号
               * @return 订单号
              */
            public static string GenerateOutTradeNo()
            {
                lock (_lock)
                {
                    Thread.Sleep(100);
                    Random ran = new Random(Guid.NewGuid().GetHashCode());
                    return string.Format("{0}{1}", DateTime.Now.ToString("yyyyMMddHHmmssfff"),
                        ran.Next(10000, 99999).ToString());
                }
    
            }
            #endregion
    
        }
    }
  • 相关阅读:
    C# 印刷文字识别-营业执照
    C# 印刷文字识别-身份证识别
    web视频点播平台
    web书籍信息管理系统
    web数字图书馆系统
    web文件监控系统
    web陶瓷商城管理系统
    web物品交易管理系统
    web校园单车管理平台
    web校园二手物品管理平台
  • 原文地址:https://www.cnblogs.com/xiangweisareas/p/13152082.html
Copyright © 2020-2023  润新知