public static T Invoke<T>(string url, object input, bool requireJSON = true)
        {
            using (var client = new HttpClient())
            {
                HttpContent httpContent = null;

                if (input != null)
                {
                    string paramJson = string.Empty;

                    if (requireJSON)
                    {
                        paramJson = JsonConvert.SerializeObject(input);
                    }
                    else
                    {
                        paramJson = Convert.ToString(input);
                    }

                    httpContent = new StringContent(paramJson);
                    httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                }

                var response = client.PostAsync(url, httpContent).Result;

                var result = response.Content.ReadAsStringAsync().Result;

                var output = JsonConvert.DeserializeObject<T>(result);

                return output;
            }
        }
application/json

相关文章: