Example #1
0
        private static HttpWebRequest CreateHttpWebRequest(String url, HttpTypes httpType, String parameters,
                                                           Encoding requestEncoding, int?timeout = null, string userAgent = "", CookieCollection cookies = null,
                                                           Boolean isJson = true)
        {
            if (string.IsNullOrEmpty(url))
            {
                throw new ArgumentNullException("url");
            }
            if (requestEncoding == null)
            {
                throw new ArgumentNullException("requestEncoding");
            }


            HttpWebRequest request;

            //如果是发送HTTPS请求
            if (url.StartsWith("https", StringComparison.OrdinalIgnoreCase))
            {
                ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
                request = WebRequest.Create(url) as HttpWebRequest;
                request.ProtocolVersion = HttpVersion.Version10;
            }
            else
            {
                request = WebRequest.Create(url) as HttpWebRequest;
            }

            request.Method = httpType.ToString().ToUpper();

            request.ContentType = isJson ? "application/json;charset=UTF-8" : "application/x-www-form-urlencoded";

            request.UserAgent = string.IsNullOrEmpty(userAgent) ? _defaultUserAgent : userAgent;


            if (timeout.HasValue)
            {
                request.Timeout = timeout.Value;
            }

            if (cookies != null)
            {
                request.CookieContainer = new CookieContainer();
                request.CookieContainer.Add(cookies);
            }

            if (!String.IsNullOrEmpty(parameters))
            {
                byte[] data = requestEncoding.GetBytes(parameters);

                using (Stream stream = request.GetRequestStream())
                {
                    stream.Write(data, 0, data.Length);
                }
            }

            // request.GetResponse() as HttpWebResponse;

            return(request);
        }
Example #2
0
        public static String GerHttpResponseResult(String url, HttpTypes httpType, String parameters,
                                                   Encoding requestEncoding, int?timeout = null, string userAgent = "", CookieCollection cookies = null,
                                                   Boolean isJson = false)
        {
            HttpWebResponse request = null;

            try
            {
                request = CreateHttpWebRequest(url, httpType, parameters, requestEncoding, timeout, userAgent, cookies,
                                               isJson).GetResponse() as HttpWebResponse;
            }
            catch (Exception ex)
            {
                return("");
            }


            String result = GetStream(request, requestEncoding);



            return(result);
        }
Example #3
0
        public static async Task <String> CreateHttpResponseResultAsync(String url, HttpTypes httpType, String parameters, Encoding requestEncoding, int?timeout = null, string userAgent = "", CookieCollection cookies = null, Boolean isJson = true)
        {
            try
            {
                var request = await CreateHttpResponseAsync(url, httpType, parameters, requestEncoding, timeout, userAgent, cookies,
                                                            isJson);


                String result = await GetStreamAsync(request, requestEncoding);



                return(result);
            }
            catch (AggregateException ex)
            {
                foreach (Exception inner in ex.InnerExceptions)
                {
                }


                return("");
            }
        }
Example #4
0
 public static async Task <String> CreateHttpResponseResultAsync(String url, HttpTypes httpType, String parameters)
 {
     return(await CreateHttpResponseResultAsync(url, httpType, parameters, Encoding.UTF8));
 }
Example #5
0
 public static async Task <HttpWebResponse> CreateHttpResponseAsync(String url, HttpTypes httpType,
                                                                    String parameters, Encoding requestEncoding, int?timeout = null, string userAgent = "",
                                                                    CookieCollection cookies = null, Boolean isJson = true)
 {
     return(await CreateHttpWebRequest(url, httpType, parameters, requestEncoding, timeout, userAgent, cookies,
                                       isJson).GetResponseAsync() as HttpWebResponse);
 }
Example #6
0
 public static String CreateHttpResponseResult(String url, HttpTypes httpType, String parameters)
 {
     return(GerHttpResponseResult(url, httpType, parameters, Encoding.UTF8));
 }