internal HttpResponseMessage MakeApiRequest(LoadBalanacerAppliance appliance, LoadBalancerRequest request) { using (var handler = new HttpClientHandler()) { if (this.TrustAllCerts) { handler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) => true; } using (var client = new HttpClient(handler)) { client.DefaultRequestHeaders.Authorization = GetAuthHeader(appliance); return(client.PostAsync(appliance.ApiUrl, GetRequestContent(appliance, request)).Result); } } }
private static StringContent GetRequestContent(LoadBalanacerAppliance applaince, LoadBalancerRequest request) { var apiRequest = new ApiRequest(applaince.ApiKey, request.Command, request.Vip, request.Rip); return(new StringContent(JsonConvert.SerializeObject(apiRequest), Encoding.UTF8)); }
private static AuthenticationHeaderValue GetAuthHeader(LoadBalanacerAppliance appliance) { var bytes = Encoding.ASCII.GetBytes($"{appliance.Username}:{appliance.Password}"); return(new AuthenticationHeaderValue("Basic", Convert.ToBase64String(bytes))); }