public byte[] GetFile(string url, HttpUserAgent UserAgent = HttpUserAgent.Undefined) { Trace.WriteLine("GET: " + url); HttpWebRequest request = HttpWebRequest.Create(url) as HttpWebRequest; request.CookieContainer = Jar; request.UserAgent = _MakeUserAgent(UserAgent); using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { using (MemoryStream memoryStream = new MemoryStream(0x10000)) { using (Stream responseStream = response.GetResponseStream()) { byte[] buffer = new byte[0x1000]; int bytes; while ((bytes = responseStream.Read(buffer, 0, buffer.Length)) > 0) { memoryStream.Write(buffer, 0, bytes); } return(memoryStream.ToArray()); } } } }
public HttpResult Post(string url, string postData, bool logging = true, HttpUserAgent UserAgent = HttpUserAgent.Undefined) { if (logging) { Trace.WriteLine("POST: " + url); } byte[] data = Encoding.UTF8.GetBytes(postData); HttpWebRequest request = HttpWebRequest.Create(url) as HttpWebRequest; request.CookieContainer = Jar; request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.UserAgent = _MakeUserAgent(UserAgent); request.AllowAutoRedirect = true; Stream newStream = request.GetRequestStream(); newStream.Write(data, 0, data.Length); newStream.Flush(); newStream.Close(); using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { return(_MakeResponse(response, logging)); } }
public HttpResult Get(string url, HttpUserAgent UserAgent = HttpUserAgent.Undefined) { Trace.WriteLine("GET: " + url); HttpWebRequest request = HttpWebRequest.Create(url) as HttpWebRequest; request.CookieContainer = Jar; request.UserAgent = _MakeUserAgent(UserAgent); using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { return(_MakeResponse(response)); } }
private string _MakeUserAgent(HttpUserAgent ua) { switch (ua) { case HttpUserAgent.Mobile: return(MobileUserAgent); case HttpUserAgent.Desktop: return(DesktopUserAgent); default: // we'll default to mobile return(MobileUserAgent); } }
public HttpResult Post(string url, Dictionary <string, string> postValues, bool logging = true, HttpUserAgent UserAgent = HttpUserAgent.Undefined) { string postData = ""; foreach (var kv in postValues) { postData += string.Format("&{0}={1}", kv.Key, WebUtil.UrlEncode(kv.Value)); } return(Post(url, postData, logging, UserAgent)); }