Пример #1
0
        /// <summary>
        ///		Obtiene los datos a firmar
        /// </summary>
        private string GetDataToSign(string strMethodDescription, string strUrl, ParameterDataCollection objColQueryString, string strNonce, string strTimeStamp)
        {
            ParameterDataCollection objColParameters = objColQueryString.Clone();
            string strDataToSign = "";

            // Añade los valores oAuth a los parámetros
            objColParameters.Add("oauth_version", cnstStrVersion);
            objColParameters.Add("oauth_consumer_key", ConsumerKey);
            objColParameters.Add("oauth_nonce", strNonce);
            objColParameters.Add("oauth_signature_method", cnstStrSignatureMethod);
            objColParameters.Add("oauth_timestamp", strTimeStamp);
            objColParameters.Add("oauth_token", AccessToken);
            // Ordena los parámetros
            objColParameters.SortByKey();
            // Añade los parámetros a la cadena
            foreach (ParameterData objParameter in objColParameters)
            {
                strDataToSign = strDataToSign.AddWithSeparator(objParameter.Key + "=" + objParameter.ValueEncoded, "&", false);
            }
            // Codifica los parámetros y lo añade a los datos a firmar
            strDataToSign = strMethodDescription + "&" + NormalizeUrl(strUrl).UrlEncode() + "&" + strDataToSign.UrlEncodeRFC3986();
            // Devuelve los datos a firmar
            return(strDataToSign);
        }