public void SignContext(OAuthContext context, TokenBase accessToken) { EnsureStateIsValid(); if (accessToken.ConsumerKey != ConsumerKey) throw Error.SuppliedTokenWasNotIssuedToThisConsumer(ConsumerKey, accessToken.ConsumerKey); var signer = new OAuthContextSigner(); var auth = new NonceGenerator(); context.UseAuthorizationHeader = UseHeaderForOAuthParameters; context.ConsumerKey = accessToken.ConsumerKey; context.Token = accessToken.Token; context.TokenSecret = accessToken.TokenSecret; context.SignatureMethod = SignatureMethod; context.Timestamp = DateTime.Now.EpocString(); context.Nonce = auth.GenerateNonce(); context.Version = "1.0"; string signatureBase = context.GenerateSignatureBase(); Console.WriteLine("signature_base: {0}", signatureBase); signer.SignContext(context, new SigningContext {Algorithm = Key, SignatureBase = signatureBase, ConsumerSecret = ConsumerSecret}); Console.WriteLine("oauth_singature: {0}", context.Signature); }
public OAuthContext BuildExchangeRequestTokenForAccessTokenContext(TokenBase requestToken, NameValueCollection additionalQueryParameters) { EnsureStateIsValid(); if (requestToken.ConsumerKey != ConsumerKey) throw Error.SuppliedTokenWasNotIssuedToThisConsumer(ConsumerKey, requestToken.ConsumerKey); var auth = new NonceGenerator(); var factory = new OAuthContextFactory(); var signer = new OAuthContextSigner(); OAuthContext context = factory.FromUri("GET", AccessTokenUri); if (additionalQueryParameters != null) context.QueryParameters.Add(additionalQueryParameters); context.ConsumerKey = ConsumerKey; context.Token = requestToken.Token; context.TokenSecret = requestToken.TokenSecret; context.RequestMethod = "GET"; context.SignatureMethod = SignatureMethod; context.Timestamp = DateTime.Now.EpocString(); context.Nonce = auth.GenerateNonce(); context.Version = "1.0"; string signatureBase = context.GenerateSignatureBase(); Console.WriteLine("signature_base: {0}", signatureBase); signer.SignContext(context, new SigningContext {Algorithm = Key, SignatureBase = signatureBase, ConsumerSecret = ConsumerSecret}); Console.WriteLine("oauth_singature: {0}", context.Signature); Uri uri = context.GenerateUri(); Console.WriteLine("Uri: {0}", uri); return context; }