示例#1
0
        public Payment Create(ILogger logger, Config config,
                              Context context)
        {
            string resourcePath = "v1/payments/payment";

            string response = null;

            Dictionary <string, string> headers;
            Uri uri     = null;
            Uri baseUri = config.Endpoint;

            var success = Uri.TryCreate(baseUri, resourcePath, out uri);

            headers = context.GetHeaders();

            var request = (HttpWebRequest)WebRequest.Create(uri);

            var json = ToJson();

            request.Method        = "POST";
            request.ContentType   = "application/json";
            request.ContentLength = json.Length;

            foreach (KeyValuePair <string, string> header in headers)
            {
                if (header.Key.Trim().Equals("User-Agent"))
                {
                    request.UserAgent = header.Value;
                }
                else
                {
                    request.Headers.Add(header.Key, header.Value);
                }
            }

            foreach (string header in request.Headers)
            {
                logger.Log(LogLevel.Debug, header + ":" + request.Headers[header]);
            }

            response = HttpHelper.GetJson(logger, json, request);

            return(JsonConvert.DeserializeObject <Payment>(response));
        }
示例#2
0
        public Payment Create(ILogger logger, Config config,
            Context context)
        {
            string resourcePath = "v1/payments/payment";

            string response = null;

            Dictionary<string, string> headers;
            Uri uri = null;
            Uri baseUri = config.Endpoint;

            var success = Uri.TryCreate(baseUri, resourcePath, out uri);

            headers = context.GetHeaders();

            var request = (HttpWebRequest)WebRequest.Create(uri);

            var json = ToJson();

            request.Method = "POST";
            request.ContentType = "application/json";
            request.ContentLength = json.Length;

            foreach (KeyValuePair<string, string> header in headers)
            {
                if (header.Key.Trim().Equals("User-Agent"))
                    request.UserAgent = header.Value;
                else
                    request.Headers.Add(header.Key, header.Value);
            }

            foreach (string header in request.Headers)
                logger.Log(LogLevel.Debug, header + ":" + request.Headers[header]);

            response = HttpHelper.GetJson(logger, json, request);

            return JsonConvert.DeserializeObject<Payment>(response);
        }