private HttpWebResponse GetResponse(string _URL, string _Verb, string _WebRequestPostData, ref object cc, ref HttpWebRequest request, ContentTypes ContentType = ContentTypes.UrlEncoded, int TimeOutMinutes = 60) { if (_WebRequestPostData == null) { _WebRequestPostData = ""; } Uri uri = new Uri(_URL); request = (HttpWebRequest)WebRequest.Create(uri); if (_URL.ToLower().Contains("https")) { ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; // TLS 1.2 } string postsourcedata = _WebRequestPostData; // start added codes request.KeepAlive = true; request.ProtocolVersion = HttpVersion.Version10; request.Method = _Verb; request.ContentType = ContentType.ToDescription(); request.ContentLength = postsourcedata.Length; request.Proxy = GetProxy(); request.UseDefaultCredentials = true; if (cc != null) { setCookies(ref request, cc); } else { request.CookieContainer = new CookieContainer(); } request.AllowAutoRedirect = true; request.MaximumAutomaticRedirections = 50; request.Timeout = (int)new TimeSpan(60, TimeOutMinutes, 60).TotalMilliseconds; request.UserAgent = GetRandomUserAgents(); if (!string.IsNullOrEmpty(postsourcedata) && _Verb == "POST") { Stream writeStream = request.GetRequestStream(); byte[] bytes = System.Text.Encoding.ASCII.GetBytes(postsourcedata); writeStream.Write(bytes, 0, bytes.Length); writeStream.Close(); } HttpWebResponse response = (HttpWebResponse)request.GetResponse(); return(response); }