Files
29WxOrder/Source/Trade.Client/APIs/CommonApi.cs
T
2026-08-31 16:28:23 +08:00

91 lines
2.1 KiB
C#

using LittleCow.Core.Helpers;
using LittleCow.Server.Extensions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using Trade.Client.Helpers;
using Trade.Client.HttpExtension;
namespace Trade.Client.APIs
{
/// <summary>
/// 公共基础数据Api
/// </summary>
internal class CommonApi : ServerReqeustBase
{
/// <summary>
/// 获取服务器时间校准时间
/// </summary>
public DateTime GetServerTime()
{
HttpResult result = ServerRequest(new ServerHttpItem { URL = $"{_config.Host}/time.php", IsSign = true });
if (result.StatusCode == HttpStatusCode.OK)
{
if (DateTime.TryParse(result.Html, out DateTime dt))
{
return dt;
}
else
{
throw new Exception("连接服务器失败,将导致无法登录");
}
}
return DateTime.Now;
}
/// <summary>
/// 获取签名验证配置
/// </summary>
public string GetAuthConfig()
{
ServerHttpItem item = new ServerHttpItem();
item.URL = $"{_config.Host}?obj=api/config&act=auth_config";
HttpResult result = ServerRequest(item);
if (result.StatusCode == HttpStatusCode.OK)
{
return result.Html;
}
return "";
}
/// <summary>
/// 获取服务器图片缓存
/// </summary>
/// <param name="imgUrl"></param>
/// <returns></returns>
public HttpResult GetImageCache(string imgUrl)
{
long id = 123;//BaseClass.GetLong(imgUrl);
ServerHttpItem item = new ServerHttpItem();
item.Method = MethodType.Post;
item.URL = BuildObjString("add_img");
item.Postdata = "act=get&table=" + Math.Abs(id % 1024) + "&id=" + id;
item.SignUser();
return ServerRequest(item);
}
/// <summary>
/// 获取缓存服务集群负载比例
/// </summary>
public string GetCacheServerRatio()
{
ServerHttpItem item = new ServerHttpItem();
item.URL = BuildObjString("config&act=cache_service_mode");
item.Method = MethodType.Post;
item.SignUser();
HttpResult result = ServerRequest(item);
if (result.StatusCode == HttpStatusCode.OK)
{
return result.Html;
}
return "";
}
}
}