|
|
|
@ -1,8 +1,4 @@
|
|
|
|
|
using System.Net;
|
|
|
|
|
using System.Net.Http.Json;
|
|
|
|
|
using System.Net.Mime;
|
|
|
|
|
|
|
|
|
|
namespace HttpClientStudy.UnitTest.HttpClients
|
|
|
|
|
namespace HttpClientStudy.UnitTest.HttpClients
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 简单 HttpClient 包装类
|
|
|
|
@ -12,7 +8,7 @@ namespace HttpClientStudy.UnitTest.HttpClients
|
|
|
|
|
#region Get请求
|
|
|
|
|
public string Get(string url)
|
|
|
|
|
{
|
|
|
|
|
HttpClient client = new HttpClient();
|
|
|
|
|
var client = new HttpClient();
|
|
|
|
|
//可以统一设置HttpClient属性:HttpClient可以使用统一设置进行多次请求。
|
|
|
|
|
//client.BaseAddress = new Uri(url);
|
|
|
|
|
//client.DefaultRequestHeaders.Add("Accept", "application/json");
|
|
|
|
@ -24,7 +20,7 @@ namespace HttpClientStudy.UnitTest.HttpClients
|
|
|
|
|
//只有Send是同步方法,其它全为异步方法。
|
|
|
|
|
|
|
|
|
|
//Send同步方法,需要HttpRequestMessage参数
|
|
|
|
|
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, url);
|
|
|
|
|
var request = new HttpRequestMessage(HttpMethod.Get, url);
|
|
|
|
|
var response = client.Send(request);
|
|
|
|
|
|
|
|
|
|
response.EnsureSuccessStatusCode();
|
|
|
|
@ -53,7 +49,7 @@ namespace HttpClientStudy.UnitTest.HttpClients
|
|
|
|
|
|
|
|
|
|
public async Task<string> GetAsync(string url)
|
|
|
|
|
{
|
|
|
|
|
HttpClient client = new HttpClient();
|
|
|
|
|
var client = new HttpClient();
|
|
|
|
|
var response = await client.GetAsync(url);
|
|
|
|
|
|
|
|
|
|
response.EnsureSuccessStatusCode();
|
|
|
|
@ -65,9 +61,9 @@ namespace HttpClientStudy.UnitTest.HttpClients
|
|
|
|
|
|
|
|
|
|
public TResult? GetJson<TResult>(string url)
|
|
|
|
|
{
|
|
|
|
|
HttpClient client = new HttpClient();
|
|
|
|
|
var client = new HttpClient();
|
|
|
|
|
|
|
|
|
|
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, url);
|
|
|
|
|
var request = new HttpRequestMessage(HttpMethod.Get, url);
|
|
|
|
|
var response = client.Send(request);
|
|
|
|
|
|
|
|
|
|
response.EnsureSuccessStatusCode();
|
|
|
|
@ -83,7 +79,7 @@ namespace HttpClientStudy.UnitTest.HttpClients
|
|
|
|
|
|
|
|
|
|
public async Task<TResult?> GetJsonAsync<TResult>(string url)
|
|
|
|
|
{
|
|
|
|
|
HttpClient client = new HttpClient();
|
|
|
|
|
var client = new HttpClient();
|
|
|
|
|
|
|
|
|
|
var response = await client.GetAsync(url);
|
|
|
|
|
|
|
|
|
|