P36
HttpRestClient.cs 部分代码
public async Task<ApiResponse> ExecuteAsync(BaseRequest baseRequest)
{
//uri
var uri = new Uri(apiUrl + baseRequest.Route);
//new restrequest
//add uri
var request = new RestRequest(uri);
//add method
request.Method=baseRequest.Method;
//add header
request.AddHeader("Content-Type", baseRequest.ContentType);
//add Parameter
if (baseRequest.Parameter != null)
request.AddParameter("param", JsonConvert.SerializeObject(baseRequest.Parameter), ParameterType.RequestBody);
//判断client是否为空
if (client == null)
return new ApiResponse()
{
Status = false,
Result = null,
Message = "client为空"
};
//执行
var response = await client.ExecuteAsync(request);
//如果成功则执行序列化任务,否则返回失败代码
if (response.StatusCode == System.Net.HttpStatusCode.OK)
return JsonConvert.DeserializeObject<ApiResponse>(response.Content);
else
return new ApiResponse()
{
Status = false,
Result = null,
Message = response.ErrorMessage
};
}
public async Task<ApiResponse<T>> ExecuteAsync<T>(BaseRequest baseRequest)
{
//uri
var uri = new Uri(apiUrl + baseRequest.Route);
//new restrequest
//add uri
var request = new RestRequest(uri);
//add method
request.Method = baseRequest.Method;
//add header
request.AddHeader("Content-Type", baseRequest.ContentType);
//add Parameter
if (baseRequest.Parameter != null)
request.AddParameter("param", JsonConvert.SerializeObject(baseRequest.Parameter), ParameterType.RequestBody);
//判断client是否为空
if (client == null)
return new ApiResponse<T>()
{
Status = false,
Message = "client为空"
};
//执行
var response = await client.ExecuteAsync(request);
//如果成功则执行序列化任务,否则返回失败代码
if (response.StatusCode == System.Net.HttpStatusCode.OK)
return JsonConvert.DeserializeObject<ApiResponse<T>>(response.Content);
else
return new ApiResponse<T>()
{
Status = false,
Message = response.ErrorMessage
};
}
标签:实战,教程,request,uri,response,add,new,WPF,baseRequest
From: https://www.cnblogs.com/dongxinya/p/17556221.html