using Flurl.Http; using Furion.Logging; using NapCatRobotClient.Core.RobotAPI.Dto.Request; namespace NapCatRobotClient.Core.RobotAPI { public class RobotAPI { /// /// 发送群消息 /// /// /// public static async Task SendGroupText(GroupSendMessageRequest request) { return await Post(JsonConvert.SerializeObject(request), "/send_group_msg"); } /// /// 发送私聊消息 /// /// /// public static async Task SendPrivateText(PrivateSendMessageRequest request) { return await Post(JsonConvert.SerializeObject(request), "/send_private_msg"); } private static async Task Post(string parameters, string action) { try { string url = App.Configuration["QQConfig:SendApiUrl"] + action; string response = await url.WithHeader("Authorization", "Bearer " + App.Configuration["QQConfig:AccessToken"]) .WithHeader("Content-Type", "application/json;charset=utf-8") .AllowAnyHttpStatus() .PostStringAsync(parameters) .ReceiveString(); return response; } catch (Exception ex) { Log.Error($"RobotAPI 请求异常,请求参数:{parameters},请求地址:{action} {ex.Message},{ex.StackTrace}"); return default; } } } }