コード例 #1
0
        private void InvokeScript(string scriptName, IList <Tuple <string, string> > parameters)
        {
            var sp = _securityProvider.CaculateSecurityParameter(parameters);

            parameters.Add(Tuple.Create("timestamp", sp.Timestamp));
            parameters.Add(Tuple.Create("client_patch", sp.Patch));
            parameters.Add(Tuple.Create("nonce", sp.Nonce));
            parameters.Add(Tuple.Create("sign", sp.Sign));
            _eventAggregator.Publish(new InvokeScriptMessage
            {
                ScriptName = scriptName,
                Args       = parameters.Select(tuple => tuple.Item2).ToArray()
            });
        }
コード例 #2
0
        private RestRequest CreateRequest(string method, IList <Tuple <string, string> > parameters)
        {
            var sp = _securityProvider.CaculateSecurityParameter(parameters);

            parameters.Add(Tuple.Create("timestamp", sp.Timestamp));
            parameters.Add(Tuple.Create("client_patch", sp.Patch));

            string urlParam = string.Join("&", parameters.Select(tuple => $"{tuple.Item1}={tuple.Item2}"));
            var    request  = new RestRequest($"{method}?{urlParam}&nonce={sp.Nonce}&sign={sp.Sign}")
            {
                OnBeforeDeserialization = resp => { resp.ContentType = "application/json"; }
            };

            return(request);
        }
コード例 #3
0
        private string GetSignedUrl(IList <Tuple <string, string> > parameters, string method)
        {
            var sp = _securityProvider.CaculateSecurityParameter(parameters);

            parameters.Add(Tuple.Create("timestamp", sp.Timestamp));
            parameters.Add(Tuple.Create("client_patch", sp.Patch));

            var urlParam = string.Join("&", parameters.Select(tuple => $"{tuple.Item1}={tuple.Item2}"));

            Logger.Trace("Prepare api for (" + method + ") : " + urlParam);

            var url = $"{urlParam}&nonce={sp.Nonce}&sign={sp.Sign}";

            return(url);
        }