Мне нужно отправить HttpWebRequest на URL с базовыми учетными данными, указанными ниже:
http://user:password@doamin/query
Я пытался установить URL-адрес как есть, но, похоже, он не прошел учетные данные (получил 403).
Попытка установить свойство Credentials для HttpWebRequest:
request.Credentials = new NetworkCredentials("username","pasword")
И удаление их из URL (в результате http://domain/query
), но все равно получил тот же результат (403).
Использование URL-адреса напрямую из любого браузера успешно завершено, поэтому учетные данные в порядке.
Чего мне не хватает?
[ОБНОВЛЕНИЕ - ОТВЕТ]
Вот код, который работал для меня:
string credentials = "username:password";
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(formattedUrl);
request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(Encoding.UTF8.GetBytes(credentials)));
request.PreAuthenticate = true;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();