Beispiel #1
0
        public HttpResponseMessage GetAuthTokenCallback(string oauth_token, string oauth_verifier, string RequestTokenSecret = "")
        {
            string response = string.Empty;

            try
            {
                CallbackResponseModel callbackResponse = new CallbackResponseModel();
                EventDetails          eventDetails     = new EventDetails();

                callbackResponse.oauth_token    = oauth_token;
                callbackResponse.oauth_verifier = oauth_verifier;
                if (RequestTokenSecret != "")
                {
                    callbackResponse.oauth_request_token_secret = RequestTokenSecret;
                }
                else
                {
                    string message = "Please send Request Token Secret";
                    return(Request.CreateResponse(HttpStatusCode.OK, message));
                }
                response = eventDetails.GetAccessToken(callbackResponse);
            }
            catch (Exception Ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, Ex));
            }
            return(Request.CreateResponse(HttpStatusCode.OK, response));
        }
        public string GetAccessToken(CallbackResponseModel callbackResponse)
        {
            string response;

            try
            {
                GetoAuth getoAuth = new GetoAuth();
                response = getoAuth.GetAccessToken(callbackResponse);
            }
            catch (Exception Ex)
            {
                throw Ex;
            }
            return(response);
        }
Beispiel #3
0
        public string GetAccessToken(CallbackResponseModel callbackResponse)
        {
            string response = string.Empty;
            string requestAccessTokenResp = string.Empty;

            string[]            resultData          = null;
            AccessTokenResponse accessTokenResponse = new AccessTokenResponse();

            try
            {
                var    time      = Math.Floor(GetTime() / 1000.0);
                string timeStamp = Convert.ToString(time);
                string Nonce     = GenerateNonce();
                //Nonce = "589849682";
                //timeStamp = "1522095584";
                string base_uri   = URLConstants.AccessTokenBaseURI;
                string parameters = "oauth_consumer_key=" + URLConstants.APIconsumerKey
                                    + "&oauth_nonce=" + Nonce
                                    + "&oauth_signature_method=HMAC-SHA1"
                                    + "&oauth_timestamp=" + timeStamp
                                    + "&oauth_token=" + callbackResponse.oauth_token
                                    + "&oauth_verifier=" + callbackResponse.oauth_verifier
                                    + "&oauth_version=1.0";

                string signature_base_string = GetSignatureBaseString(base_uri, parameters);
                string signature             = GetSha1Hash(URLConstants.APISecretKey + "&" + callbackResponse.oauth_request_token_secret, signature_base_string);
                Console.WriteLine(signature);

                base_uri = URLConstants.AccessTokenBaseURI + "?"
                           + "oauth_consumer_key=" + URLConstants.APIconsumerKey
                           + "&oauth_nonce=" + Nonce
                           + "&oauth_signature=" + signature
                           + "&oauth_signature_method=HMAC-SHA1"
                           + "&oauth_timestamp=" + timeStamp
                           + "&oauth_token=" + callbackResponse.oauth_token
                           + "&oauth_verifier=" + callbackResponse.oauth_verifier
                           + "&oauth_version=1.0";

                Console.WriteLine(base_uri);

                requestAccessTokenResp = PostResponseFromWeb(base_uri);
                Console.WriteLine(requestAccessTokenResp);

                if (requestAccessTokenResp != string.Empty)
                {
                    resultData = requestAccessTokenResp.Split('&');
                }
                if (resultData != null && resultData.Length > 0)
                {
                    for (int i = 0; i < resultData.Length; i++)
                    {
                        if (resultData[i].Split('=').Length > 0)
                        {
                            resultData[i] = resultData[i].Split('=')[1];
                        }
                    }

                    accessTokenResponse.oauth_token        = resultData[0];
                    accessTokenResponse.oauth_token_secret = resultData[1];

                    var json = new JavaScriptSerializer().Serialize(accessTokenResponse);
                    response = json.ToString();
                }
            }
            catch (Exception Ex)
            {
                throw Ex;
            }
            return(response);
        }