using Newtonsoft.Json; using Example.Models.StaticData; using Example.Models; using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Net.Http; using System.Text; using System.Threading.Tasks; namespace Example.Connectors { internal class GetPacksData { public static async Task LoadPacks(string serverPort, string page) { try { string apiurl = $"https://api.whalleybot.com/bot/{serverPort}/GetPacks/{page}"; var handler = new HttpClientHandler() { ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator }; using (var client = new HttpClient(handler)) { client.DefaultRequestHeaders.Add("Authorization", "WhalleyBotOverlay_e-H1rr55f"); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); var apicall = await client.GetAsync(apiurl) .ConfigureAwait(false); var response = apicall; if (response.IsSuccessStatusCode) { var json = response.Content.ReadAsStringAsync().Result; ShopPacksModule Infoserver = JsonConvert.DeserializeObject(json); Form1Module.OverlayCanOpen = "On"; Form1Module.OverlayCanOpenBackcolor = System.Drawing.Color.DarkGreen; Form1Module.OverlayCanOpenForecolor = System.Drawing.Color.White; return Infoserver; } else { if (response.StatusCode == System.Net.HttpStatusCode.BadRequest) { Form1Module.WarningMsg = response.ReasonPhrase; Form1Module.OverlayCanOpen = "On"; Form1Module.OverlayCanOpenBackcolor = System.Drawing.Color.DarkGreen; Form1Module.OverlayCanOpenForecolor = System.Drawing.Color.White; } else { throw new Exception(response.ReasonPhrase + response.StatusCode); } return null; } } } catch (Exception ex) { Debug.WriteLine(ex.Source + ex.Message + ex.Data + ex.StackTrace); return null; } } } }