в приложении Windows, webRequest.GetResponse()
Поведение:
1) В первый раз я попробовал с "invalid user name/ credentials"
и получил ошибку ниже.
"ОШИБКА: удаленный сервер возвратил ошибку: (407) Прокси
Требуется аутентификация. "
и сейчас я даю действительный "user name and credentials"
-> получаю ответ
2) Теперь обратный сценарий,
Т.е. я вызвал API с правильными именем пользователя и паролем -> работает
после этого, если я попытаюсь использовать недействительные учетные данные, я получу ответ.
Фрагмент кода:
private void button1_Click(object sender, EventArgs e)
{
label1.Text = string.Empty;
var webProxy = new WebProxy("http://proxy:80/",true)
{
Credentials = new NetworkCredential("UserName", "PassWord"),
UseDefaultCredentials = false
};
WebRequest.DefaultWebProxy = webProxy;
try
{
var webRequest = (HttpWebRequest)WebRequest.Create("http://Google.co.in");
webRequest.Proxy = webProxy;
webRequest.Timeout = 30 * 1000;
using (var webResponse = (HttpWebResponse)webRequest.GetResponse())
{
label1.Text = string.Format("WebRequest Response Code : {0}. Web Request Status : {1}", webResponse.StatusCode, webResponse.StatusDescription);
}
}
catch (Exception ex)
{
label1.Text = ex.Message;
}
finally { WebRequest.DefaultWebProxy = null; }
}
Я не могу найти точную причину, по которой вызов становится успешным, пожалуйста, помогите мне разобраться в вышеописанном сценарии.