Требуется проверка подлинности прокси (407) в некоторой сети - PullRequest
0 голосов
/ 14 февраля 2020

Я попробовал приведенный ниже код для решения проблемы аутентификации прокси. Но проблема остается. Примечание. В некоторых сетях без использования прокси-сервера все работает нормально.

var INI = new IniFile(@"Settings.ini");
String scredUserName = INI.Read("UserName", "Credentials");     
String sPassword = INI.Read("Password", "Credentials");        
String sAPIKey = INI.Read("APIKey", "Credentials");


string sUserNamePassword = scredUserName + ":" + sPassword;
byte[] byteUserNamePassword = System.Text.ASCIIEncoding.ASCII.GetBytes(sUserNamePassword);
string encodedUserNamePassword = System.Convert.ToBase64String(byteUserNamePassword);

client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", 
encodedUserNamePassword);
client.DefaultRequestHeaders.Add("aw-tenant-code", sAPIKey);

String sProxyUserName = INI.Read("UserName", "Proxy Authentication");
String sProxyPassword = INI.Read("Password", "Proxy Authentication");

string sProxyUserNamePassword = sProxyUserName + ":" + sProxyPassword;
byte[] byteProxyUserNamePassword = System.Text.ASCIIEncoding.ASCII.GetBytes(sProxyUserNamePassword);
string encodedProxyUserNamePassword = System.Convert.ToBase64String(byteProxyUserNamePassword);
client.DefaultRequestHeaders.Add("Proxy-Authorization", "Basic " + encodedProxyUserNamePassword);

1 Ответ

0 голосов
/ 13 марта 2020

Отправка ответа на мои вопросы: - Я должен был передать учетные данные прокси вместе с адресом прокси.

                    WebProxy wbProxy = new WebProxy();
                    Uri newUri = new Uri(sProxyAddress);

                    wbProxy.Address = newUri; 

                    wbProxy.Credentials = new NetworkCredential(sProxyUserName, sProxyPassword);
                    client.Proxy = wbProxy;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...