Пример #1
0
        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);
                }
            }
        }
Пример #2
0
        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));
        }
Пример #3
0
        private static AuthenticationHeaderValue GetAuthHeader(LoadBalanacerAppliance appliance)
        {
            var bytes = Encoding.ASCII.GetBytes($"{appliance.Username}:{appliance.Password}");

            return(new AuthenticationHeaderValue("Basic", Convert.ToBase64String(bytes)));
        }