Exemple #1
0
 /// <summary>
 /// GET数据
 /// </summary>
 /// <param name="requestUrl"></param>
 /// <param name="parameters"></param>
 /// <param name="callback"></param>
 protected virtual void GetData(string requestUrl, Parameters parameters, Action<string> callback)
 {
     this.LastError = null;
     this.AddOAuthParameter("GET", requestUrl, parameters);
     var request = new AsyncHttpRequest(requestUrl, this.OAuth.Charset) { Parameters = parameters };
     request.Get(EndGetResponseData, callback);
 }
Exemple #2
0
 /// <summary>
 /// POST数据
 /// </summary>
 /// <param name="requestUrl"></param>
 /// <param name="parameters"></param>
 /// <param name="files"></param>
 /// <param name="callback"></param>
 protected virtual void PostData(string requestUrl, Parameters parameters, Files files, Action<string> callback)
 {
     this.LastError = null;
     this.AddOAuthParameter("POST", requestUrl, parameters);
     var request = new AsyncHttpRequest(requestUrl, this.OAuth.Charset) { Parameters = parameters };
     if (files != null)
     {
         request.PostFile(EndGetResponseData, files, callback);
     }
     else
     {
         request.Post(EndGetResponseData, callback);
     }
 }
Exemple #3
0
 /// <summary>
 ///  获取IP地址,并回调
 /// </summary>
 /// <param name="callback"></param>
 public void GetIpAddress(Action<string> callback)
 {
     var request = new AsyncHttpRequest(IpaddressApi, Encoding.UTF8);
     request.Get(EndGetResponseData, callback);
 }
Exemple #4
0
        /// <summary>
        /// 获取授权Token
        /// </summary>
        /// <param name="requestUrl">API请求地址</param>
        /// <param name="parameters"></param>
        /// <param name="responseEnd"></param>
        /// <returns></returns>
        private void GetOAuthToken(string requestUrl, Parameters parameters, Action<string, Action<string>> responseEnd, Action<string> callback)
        {
            this.LastError = null;
            parameters.Add("oauth_consumer_key", this.AppKey);
            parameters.Add("oauth_signature_method", "HMAC-SHA1");
            parameters.Add("oauth_timestamp", Util.GenerateTimestamp());
            parameters.Add("oauth_nonce", Util.GenerateRndNonce());
            parameters.Add("oauth_version", "1.0");
            parameters.Add("oauth_signature", this.GenerateSignature("GET", requestUrl, parameters));
            string url = string.Concat(requestUrl, "?", parameters.BuildQueryString(true));

            var request = new AsyncHttpRequest(url, this.Charset);
            try
            {
                request.Get(responseEnd, callback);
            }
            catch (Exception ex)
            {
                this.LastError = ex;
            }
        }