forked from powerfun/udpservice
62 lines
2.1 KiB
C#
62 lines
2.1 KiB
C#
|
|
using Newtonsoft.Json;
|
|||
|
|
|
|||
|
|
using OnlineUserPool.Model;
|
|||
|
|
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using System.Net.Http;
|
|||
|
|
using System.Text;
|
|||
|
|
using System.Threading.Tasks;
|
|||
|
|
|
|||
|
|
namespace OnlineUserPool.Unility
|
|||
|
|
{
|
|||
|
|
public class BaseApi
|
|||
|
|
{
|
|||
|
|
internal static System.Net.Http.HttpClient httpClient;
|
|||
|
|
static BaseApi()
|
|||
|
|
{
|
|||
|
|
httpClient = new System.Net.Http.HttpClient();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
protected static async Task<T> PostAsync<T>(string url, object data)
|
|||
|
|
{
|
|||
|
|
StringContent stringContent;
|
|||
|
|
if (data != null)
|
|||
|
|
{
|
|||
|
|
stringContent = new StringContent(JsonConvert.SerializeObject(data), Encoding.UTF8, "application/json");
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
stringContent = new StringContent("", Encoding.UTF8);
|
|||
|
|
}
|
|||
|
|
var response = await httpClient.PostAsync(ConfigHelp.Host + url, stringContent).ConfigureAwait(false);
|
|||
|
|
var result = await response.Content.ReadAsStringAsync();
|
|||
|
|
return JsonConvert.DeserializeObject<T>(result);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
protected static async Task<T> GetAsync<T>(string url)
|
|||
|
|
{
|
|||
|
|
var response = await httpClient.GetAsync(ConfigHelp.Host + url, HttpCompletionOption.ResponseContentRead).ConfigureAwait(false);
|
|||
|
|
var result = await response.Content.ReadAsStringAsync();
|
|||
|
|
return JsonConvert.DeserializeObject<T>(result);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
public class WebService : BaseApi
|
|||
|
|
{
|
|||
|
|
/// <summary>
|
|||
|
|
/// 从服务端获取记录信息
|
|||
|
|
/// </summary>
|
|||
|
|
/// <returns></returns>
|
|||
|
|
public static List<MapRecordRanking> GetRecordFileFromServer(List<string> id)
|
|||
|
|
{
|
|||
|
|
return PostAsync<JsonResult<List<MapRecordRanking>>>("Map/GetCyclingRecordsById", id).ConfigureAwait(false).GetAwaiter().GetResult().data;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public static List<MapRouteAndUserQueryVM> GetMapRouteRandomUser(RandomRankingUserRequestVM requestVM)
|
|||
|
|
{
|
|||
|
|
return PostAsync<JsonResult<List<MapRouteAndUserQueryVM>>>($"Map/GetRandomRankingUserRecord", requestVM).ConfigureAwait(false).GetAwaiter().GetResult().data;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|