using System.IO;
using System.Net;
using System.Text;
namespace Netch.Utils
{
public static class HTTP
{
///
/// User Agent
///
public static readonly string DefaultUA = $"Netch/{Global.VerCode}";
///
/// 创建请求
///
/// 地址
/// 超时
///
public static HttpWebRequest CreateRequest(string url, int timeout = 0)
{
var request = (HttpWebRequest)WebRequest.Create(url);
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 = (HttpWebResponse)request.GetResponse();
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 = (HttpWebResponse)request.GetResponse();
using (var rs = response.GetResponseStream())
{
using (var sr = new StreamReader(rs, Encoding.UTF8))
{
return sr.ReadToEnd();
}
}
}
public static string GetString(HttpWebRequest request)
{
var response = (HttpWebResponse)request.GetResponse();
using (var rs = response.GetResponseStream())
{
using (var sr = new StreamReader(rs, Encoding.UTF8))
{
return sr.ReadToEnd();
}
}
}
}
}