Тот же код для доступа к веб-службе в приложении ядра .net не работает в приложении .net Framework - PullRequest
0 голосов
/ 24 октября 2019

У меня есть консольное приложение на основе ядра .net, которое обращается к веб-сервису, передавая имя пользователя и пароль. Это прекрасно работает. Но когда я пытаюсь запустить тот же код в другом консольном приложении (.net framework), происходит сбой с несанкционированной ошибкой 401.

Проверка трафика в fiddler, я заметил, что учетные данные / заголовки с учетными данными не являютсяустанавливается при использовании приложения на основе .net framework и, следовательно, не проходит авторизацию.

var validateURL = "<webservice URL>";
var strValidate = "";
WebClient client = new WebClient();
//client.Credentials = New NetworkCredential(username, password);
var credentials = "";
credentials = Convert.ToBase64String(Encoding.ASCII.GetBytes(username + ":" + password));
client.Headers.Add("Authorization", String.Format("Basic {0}", credentials));
strValidate = client.DownloadString(validateURL);
if (strValidate == "OK")
{
    Console.WriteLine("OK");
}
...