示例#1
0
        private string GetSignatureBase()
        {
            var elements = _parameterMap
                           .Select(parameter => parameter.Key + '=' + parameter.Value)
                           .ToArray();

            _normalizedParameters = string.Join("&", elements);

            var signatureBase = _httpMethod
                                + '&' + EncodingUtility.UrlEncode(_normalizedUrl)
                                + '&' + EncodingUtility.UrlEncode(_normalizedParameters);

            return(signatureBase);
        }
        public void AddSignature(ParameterMap parameterMap)
        {
            var signatureBaseElements = parameterMap
                             .Select(parameter => parameter.Key + parameter.Value)
                             .ToArray();

            var simplickrConfig = _simplickrConfigurationProvider.GetConfig();
            var secret = simplickrConfig.Secret;
            var signatureBase = secret + string.Join("", signatureBaseElements);

            var signature = MD5Hash(signatureBase);

            parameterMap.Set("api_sig", EncodingUtility.UrlEncode(signature));
        }