Ejemplo n.º 1
0
        /// <summary>
        /// Add the provided parameters to the header of the provided request.
        /// </summary>
        public static void MakeRequestAuthenticated(HttpWebRequest request, IEnumerable <QueryParameter> parameters, string clientSecret, string tokenSecret)
        {
            QueryParameter  signatureMethodParameter = null;
            SignatureMethod signatureMethod;

            try
            {
                signatureMethodParameter = parameters.Single(x => x.Name == OAuthParameter.SignatureMethod.ToStringValue());
                signatureMethod          = OAuthSignatureMethods.Single(x => x.Value == signatureMethodParameter.Value).Key;
            }
            catch (Exception ex)
            {
                throw new ArgumentException("Signature method not found in the parameters.", ex);
            }
            var parametersList = parameters.ToList();
            var signatureBase  = OAuthHelper.GetSignatureBaseString(request.Method, request.Address, parametersList);
            var signature      = OAuthHelper.GetSignature(signatureMethod, signatureBase, clientSecret, tokenSecret);

            parametersList.Add(new QueryParameter(OAuthParameter.Signature, signature));
            request.Headers.Add(HttpRequestHeader.Authorization, OAuthHelper.GetAuthorizationHeaderValue(parametersList));
        }
Ejemplo n.º 2
0
 public OAuthRequest WithSignatureMethod(OAuthSignatureMethods method)
 {
     SignatureMethod = method;
     return this;
 }
Ejemplo n.º 3
0
 public OAuthRequest WithSignatureMethod(OAuthSignatureMethods method)
 {
     SignatureMethod = method;
     return(this);
 }