示例#1
0
        private HttpWebRequest GenerateRequest(string serviceName, string contentType, System.Net.Http.HttpMethod requestMethod, string Referer = "")
        {
            var httpWebRequest = (HttpWebRequest)WebRequest.Create(GetFullServiceName(serviceName));

            httpWebRequest.Method      = requestMethod.ToString();
            httpWebRequest.ContentType = contentType;
            httpWebRequest.Timeout     = RequestTimeOut;

            var config = new TinyOAuthConfig
            {
                ConsumerKey    = Authorization.clientId,
                ConsumerSecret = Authorization.clientSecret
            };

            var tinyOAuth = new TinyOAuth(config);

            if (serviceName == "/oauth2/token")
            {
                httpWebRequest.Headers.Add("Authorization", "Basic " + System.Convert.ToBase64String(Encoding.UTF8.GetBytes(Authorization.clientId + ":" + Authorization.clientSecret)));
            }
            else
            {
                httpWebRequest.Headers.Add("Authorization", tinyOAuth.GetAuthorizationHeader(Authorization.tokenKey, Authorization.tokenSecret, Regex.Replace(GetFullServiceName(serviceName), "(.*)\\/api(.*)", "$1$2"), requestMethod).ToString());
            }

            httpWebRequest.Referer   = Referer;
            httpWebRequest.UserAgent = "essium-dotnet-connector";
            return(httpWebRequest);
        }
示例#2
0
 public static HttpResult Request(string url, System.Net.Http.HttpMethod method, Encoding encoding)
 {
     return(Request(new HttpRequest
     {
         Url = url,
         Method = method.ToString(),
         Encoding = encoding
     }));
 }