string contentType = ""
public class Monitor
{
/// <summary>
/// POST请求
/// </summary>
/// <param></param>
/// <param></param>
/// <param>application/xml、application/json、application/text、application/x-www-form-urlencoded</param>
/// <param></param>
/// <returns></returns>
public string HttpPostAsync(string url, object obj, string contentType = "", string charset = "UTF-8")
{
string result = "";
var serviceProvider = new ServiceCollection().AddHttpClient().BuildServiceProvider();
IHttpClientFactory _httpClientFactory = serviceProvider.GetService<IHttpClientFactory>();
var _httpClient = _httpClientFactory.CreateClient("CTCCMonitor");
_httpClient.DefaultRequestHeaders.Accept.Clear();
_httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(contentType));
string content = JsonConvert.SerializeObject(obj);
var httpContent = new StringContent(content, Encoding.UTF8, contentType);
var response = _httpClient.PostAsync(url, httpContent).Result;
if (response.IsSuccessStatusCode)
{
Task<string> t = response.Content.ReadAsStringAsync();
if (t != null)
{
result = t.Result;
}
}
return result;
}
/// <summary>
/// GET请求
/// </summary>
/// <param></param>
/// <returns></returns>
public string HttpGetAsync(string url)
{
string result = "";
var serviceProvider = new ServiceCollection().AddHttpClient().BuildServiceProvider();
IHttpClientFactory _httpClientFactory = serviceProvider.GetService<IHttpClientFactory>();
var _httpClient = _httpClientFactory.CreateClient("CTCCMonitor");
var response = _httpClient.GetAsync(url).Result;
if (response.IsSuccessStatusCode)
{
Task<string> t = response.Content.ReadAsStringAsync();
if (t != null)
{
result = t.Result;
}
}
return result;
}
}
string url="";//接口地点
//Post请求
string postData = "method=" + method + "&user_id=" + user_id + "&passWord=" + passwordEnc + "&sign=" + sign;
apiResult = monitor.HttpPostAsync(url, postData, "application/x-www-form-urlencoded");
string requestUrl = url + "?method=" + method + "&user_id=" + user_id + "&passWord=" + passwordEnc + "&sign=" + sign;
apiResult = monitor.HttpGetAsync(requestUrl);
IHttpClientFactory挪用接口
,温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31670.html