using System.Text; using System.Text.Json; namespace ACBuildService; public static class HttpHelper { private static readonly HttpClient _httpClient = new HttpClient(); public static async Task GetAsync(string url) { try { HttpResponseMessage response = await _httpClient.GetAsync(url); response.EnsureSuccessStatusCode(); // 使用 UTF-8 编码读取响应内容 byte[] byteArray = await response.Content.ReadAsByteArrayAsync(); return Encoding.UTF8.GetString(byteArray); } catch (HttpRequestException e) { // 处理请求异常 Console.WriteLine($"Request error: {e.Message}"); throw; } } public static async Task PostAsync(string url, T data) { try { string json = JsonSerializer.Serialize(data); StringContent content = new StringContent(json, Encoding.UTF8, "application/json"); HttpResponseMessage response = await _httpClient.PostAsync(url, content); response.EnsureSuccessStatusCode(); // 使用 UTF-8 编码读取响应内容 byte[] byteArray = await response.Content.ReadAsByteArrayAsync(); return Encoding.UTF8.GetString(byteArray); } catch (HttpRequestException e) { // 处理请求异常 Console.WriteLine($"Request error: {e.Message}"); throw; } } }