/// <summary>
        ///
        /// </summary>
        /// <param name="url"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public Task <HttpWebResponse> GetHttpWebResponseAsync(String url, HttpBodyFormUrlEncodedData data)
        {
            var cm = new HttpRequestCommand(url);

            cm.SetBodyStream(data);
            return(this.GetHttpWebResponseAsync(cm));
        }
示例#2
0
 public HttpRequestCommand(String url, HttpBodyFormUrlEncodedData data)
 {
     this.InitializeProperty();
     this.Url         = url;
     this.MethodName  = HttpMethodName.Post;
     this.ContentType = HttpClient.ApplicationFormUrlEncoded;
     this.BodyStream  = new MemoryStream(this.CreateRequestBodyData(data.Encoding, data.Values));
 }
示例#3
0
        public void SetBodyStream(HttpBodyFormUrlEncodedData data)
        {
            if (String.IsNullOrEmpty(this.ContentType) == true)
            {
                this.ContentType = HttpClient.ApplicationFormUrlEncoded;
            }
            var bb = this.CreateRequestBodyData(data.Encoding, data.Values);

            this.BodyStream       = new MemoryStream(bb);
            this.IsSendBodyStream = true;
        }
示例#4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="methodName"></param>
        /// <param name="url"></param>
        /// <param name="token"></param>
        /// <param name="tokenSecret"></param>
        /// <param name="queryString"></param>
        /// <param name="parameters"></param>
        /// <returns></returns>
        public HttpWebResponse GetHttpWebResponse(HttpMethodName methodName, String url, String token, String tokenSecret
                                                  , IDictionary <String, String> queryString, IDictionary <String, String> parameters)
        {
            HttpBodyFormUrlEncodedData data = new HttpBodyFormUrlEncodedData();
            var d  = data.Values;
            var cm = this.CreateHttpRequestCommand(methodName, url, token, tokenSecret, queryString);

            foreach (var p in parameters)
            {
                d[p.Key] = cm.UrlEncodeFunction(p.Value);
            }
            cm.SetBodyStream(data);
            return(this.GetHttpWebResponse(cm));
        }
示例#5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="methodName"></param>
        /// <param name="url"></param>
        /// <param name="token"></param>
        /// <param name="tokenSecret"></param>
        /// <param name="queryString"></param>
        /// <param name="parameters"></param>
        /// <param name="callback"></param>
        public void GetResponse(HttpMethodName methodName, String url, String token, String tokenSecret
                                , IDictionary <String, String> queryString, IDictionary <String, String> parameters, Action <HttpResponse> callback)
        {
            var cm = this.CreateHttpRequestCommand(methodName, url, token, tokenSecret, queryString);
            Dictionary <String, String> d = null;

            if (parameters != null)
            {
                d = new Dictionary <string, string>();
                cm.ContentType = HttpClient.ApplicationFormUrlEncoded;
                foreach (var p in parameters)
                {
                    d[p.Key] = cm.UrlEncodeFunction(p.Value);
                }
            }
            var data = new HttpBodyFormUrlEncodedData(Encoding.UTF8, d);

            cm.SetBodyStream(data);
            this.GetResponse(cm, callback);
        }
示例#6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="url"></param>
 /// <param name="data"></param>
 /// <returns></returns>
 public Task <HttpWebResponse> GetHttpWebResponseAsync(String url, HttpBodyFormUrlEncodedData data)
 {
     return(this.GetHttpWebResponseAsync(url, data));
 }
示例#7
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="url"></param>
 /// <param name="data"></param>
 /// <returns></returns>
 public Task <String> GetBodyTextAsync(String url, HttpBodyFormUrlEncodedData data)
 {
     return(this.GetBodyTextAsync(url, data));
 }
示例#8
0
 public void GetHttpWebResponse(String url, HttpBodyFormUrlEncodedData data, Action <HttpWebResponse> callback)
 {
     this.GetHttpWebResponse(new HttpRequestCommand(url, data), callback);
 }
示例#9
0
 public void GetBodyText(String url, HttpBodyFormUrlEncodedData data, Action <String> callback)
 {
     this.GetBodyText(new HttpRequestCommand(url, data), text => callback(text));
 }
示例#10
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="data"></param>
 public void SetBodyStream(HttpBodyFormUrlEncodedData data)
 {
     if (String.IsNullOrEmpty(this.ContentType) == true)
     {
         this.ContentType = HttpClient.ApplicationFormUrlEncoded;
     }
     var bb = this.CreateRequestBodyData(data.Encoding, data.Values);
     this.BodyStream = new MemoryStream(bb);
     this.IsSendBodyStream = true;
 }
示例#11
0
 public HttpResponse GetResponse(String url, HttpBodyFormUrlEncodedData data)
 {
     return(this.GetResponse(new HttpRequestCommand(url, data)));
 }
示例#12
0
 public String GetBodyText(String url, HttpBodyFormUrlEncodedData data)
 {
     return(this.GetBodyText(new HttpRequestCommand(url, data)));
 }
示例#13
0
        public Task <String> GetBodyTextAsync(String url, HttpBodyFormUrlEncodedData data)
        {
            var cm = new HttpRequestCommand(url, data);

            return(this.GetBodyTextAsync(cm));
        }
示例#14
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="url"></param>
 /// <param name="data"></param>
 /// <returns></returns>
 public HttpResponse GetResponse(String url, HttpBodyFormUrlEncodedData data)
 {
     return this.GetResponse(new HttpRequestCommand(url, data));
 }
示例#15
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="url"></param>
 /// <param name="data"></param>
 public HttpRequestCommand(String url, HttpBodyFormUrlEncodedData data)
 {
     this.InitializeProperty();
     this.Url = url;
     this.MethodName = HttpMethodName.Post;
     this.ContentType = HttpClient.ApplicationFormUrlEncoded;
     this.BodyStream = new MemoryStream(this.CreateRequestBodyData(data.Encoding, data.Values));
 }
示例#16
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="url"></param>
 /// <param name="data"></param>
 /// <returns></returns>
 public String GetBodyText(String url, HttpBodyFormUrlEncodedData data)
 {
     return this.GetBodyText(new HttpRequestCommand(url, data));
 }
示例#17
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="methodName"></param>
 /// <param name="url"></param>
 /// <param name="token"></param>
 /// <param name="tokenSecret"></param>
 /// <param name="queryString"></param>
 /// <param name="parameters"></param>
 /// <param name="callback"></param>
 public void GetResponse(HttpMethodName methodName, String url, String token, String tokenSecret
     , IDictionary<String, String> queryString, IDictionary<String, String> parameters, Action<HttpResponse> callback)
 {
     var cm = this.CreateHttpRequestCommand(methodName, url, token, tokenSecret, queryString);
     Dictionary<String, String> d = null;
     if (parameters != null)
     {
         d = new Dictionary<string, string>();
         cm.ContentType = HttpClient.ApplicationFormUrlEncoded;
         foreach (var p in parameters)
         {
             d[p.Key] = cm.UrlEncodeFunction(p.Value);
         }
     }
     var data = new HttpBodyFormUrlEncodedData(Encoding.UTF8, d);
     cm.SetBodyStream(data);
     this.GetResponse(cm, callback);
 }