Ejemplo n.º 1
0
        private UserInfo GetUserData(string token)
        {
            var parameters = new NameValueCollection {
                { "oauth_consumer_key", _appId },
                { "oauth_nonce", SignatureGenerator.GenerateNonce() },
                { "oauth_signature_method", SignatureMethod },
                { "oauth_timestamp", SignatureGenerator.GetTimestamp() },
                { "oauth_token", token },
                { "oauth_version", "1.0" },
            };
            var parametersString = OAuthHelpers.ConstructQueryString(parameters);

            var signature = _signatureGenerator.GenerateSignature("GET", TumblrApi + "v2/user/info", parametersString);

            parameters.Set("oauth_signature", signature);

            var auth = "OAuth" + OAuthHelpers.ConstructQueryString(parameters, ",");

            var userInfoUrl = OAuthHelpers.BuildUri(TumblrApi, "v2/user/info", parameters);
            var response    = OAuthHelpers.AuthorizationLoad(userInfoUrl, auth);

            dynamic obj = JObject.Parse(response);

            return(new UserInfo {
                Id = obj.response.user.blogs[0].url,
                UserName = obj.response.user.name
            });
        }
Ejemplo n.º 2
0
        private string CreateRequestTokenUrl()
        {
            var parameters = new NameValueCollection {
                { "oauth_callback", SignatureGenerator.Encode(_redirectUri) },
                { "oauth_consumer_key", _appId },
                { "oauth_nonce", SignatureGenerator.GenerateNonce() },
                { "oauth_signature_method", SignatureMethod },
                { "oauth_timestamp", SignatureGenerator.GetTimestamp() },
                { "oauth_version", OAuthValue }
            };

            var parametersString = OAuthHelpers.ConstructQueryString(parameters);
            var signature        = _signatureGenerator.GenerateSignature("GET", OAuthUrl + OAuthRequestTokenPath, parametersString, true);

            parameters.Set("oauth_signature", signature);

            return(OAuthHelpers.BuildUri(OAuthUrl, OAuthRequestTokenPath, parameters));
        }
Ejemplo n.º 3
0
        private string CreateRequestTokenUrl(Uri returnUrl)
        {
            var parameters = new NameValueCollection {
                { "oauth_callback", SignatureGenerator.Encode(returnUrl.AbsoluteUri) },
                { "oauth_consumer_key", _appId },
                { "oauth_nonce", SignatureGenerator.GenerateNonce() },
                { "oauth_signature_method", SignatureMethod },
                { "oauth_timestamp", SignatureGenerator.GetTimestamp() },
                { "oauth_version", "1.0" },
            };
            var parametersString = OAuthHelpers.ConstructQueryString(parameters);

            var signature = _signatureGenerator.GenerateSignature("GET", TumblrUrl + "oauth/request_token", parametersString, true);

            parameters.Set("oauth_signature", signature);

            return(OAuthHelpers.BuildUri(TumblrUrl, "oauth/request_token", parameters));
        }
Ejemplo n.º 4
0
        private string CreateUserInfoUrl(HttpContextBase context)
        {
            var parameters = new NameValueCollection {
                { "oauth_consumer_key", _appId },
                { "oauth_nonce", SignatureGenerator.GenerateNonce() },
                { "oauth_signature_method", SignatureMethod },
                { "oauth_timestamp", SignatureGenerator.GetTimestamp() },
                { "oauth_token", context.Request.QueryString["oauth_token"] },
                { "oauth_verifier", context.Request.QueryString["oauth_verifier"] },
                { "oauth_version", OAuthValue }
            };

            var parametersString = OAuthHelpers.ConstructQueryString(parameters);
            var signature        = _signatureGenerator.GenerateSignature("GET", OAuthUrl + OAuthAccessTokenPath, parametersString);

            parameters.Set("oauth_signature", signature);

            return(OAuthHelpers.BuildUri(OAuthUrl, OAuthAccessTokenPath, parameters));
        }
Ejemplo n.º 5
0
        private string CreateAccessTokenUrl(HttpContextBase context)
        {
            var parameters = new NameValueCollection {
                { "oauth_consumer_key", _appId },
                { "oauth_nonce", SignatureGenerator.GenerateNonce() },
                { "oauth_signature_method", "HMAC-SHA1" },
                { "oauth_timestamp", SignatureGenerator.GetTimestamp() },
                { "oauth_token", context.Request["oauth_token"] },
                { "oauth_verifier", context.Request["oauth_verifier"] },
                { "oauth_version", "1.0" },
            };
            var parametersString = OAuthHelpers.ConstructQueryString(parameters);

            var signature = _signatureGenerator.GenerateSignature("GET", TumblrUrl + "oauth/access_token", parametersString);

            parameters.Set("oauth_signature", signature);

            return(OAuthHelpers.BuildUri(TumblrUrl, "oauth/access_token", parameters));
        }