using System.IO; using System.Net; using System.Text; namespace Netch.Utils { public static class HTTP { static HTTP() { ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls11; ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12; ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls13; } /// /// User Agent /// public static readonly string DefaultUA = $"Netch/{Global.VerCode}"; /// /// 创建请求 /// /// 地址 /// 超时 /// public static HttpWebRequest CreateRequest(string url, int timeout = 0) { var request = WebRequest.Create(url) as HttpWebRequest; request.UserAgent = DefaultUA; request.Accept = "*/*"; request.KeepAlive = true; request.Timeout = timeout; return request; } public static string GetString(string url) { var request = CreateRequest(url, 10000); var response = request.GetResponse() as HttpWebResponse; using (var rs = response.GetResponseStream()) { using (var sr = new StreamReader(rs, Encoding.UTF8)) { return sr.ReadToEnd(); } } } public static string GetString(string url, int timeout) { var request = CreateRequest(url, timeout); var response = request.GetResponse() as HttpWebResponse; using (var rs = response.GetResponseStream()) { using (var sr = new StreamReader(rs, Encoding.UTF8)) { return sr.ReadToEnd(); } } } public static string GetString(HttpWebRequest request) { var response = request.GetResponse() as HttpWebResponse; using (var rs = response.GetResponseStream()) { using (var sr = new StreamReader(rs, Encoding.UTF8)) { return sr.ReadToEnd(); } } } } }