Beispiel #1
0
        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());
                    }
                }
            }
        }
Beispiel #2
0
        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));
            }
        }
Beispiel #3
0
        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));
            }
        }
Beispiel #4
0
        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);
            }
        }
Beispiel #5
0
        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));
        }