Вопрос

У меня небольшая проблема при входе в систему с веб-сервисом, размещенным с использованием HTML с помощью базовая аутентификация.Я пробовал следующее, но это не сработало.Есть ли какие-либо ограничения или подводные камни по этому поводу?

           var client = new WSClient();
           client.ClientCredentials.UserName.UserName = "xxx";
           client.ClientCredentials.UserName.Password = "yyy";
           client.doIt();

Клиент показывает исключение с неавторизованным кодом http 401, но он не пытается войти в систему.Клиент использует WCF и генерируется Visual Studio 2008, сервер работает под управлением Java Apache CXF.Основная задача отлично работает с использованием веб-браузера...

Это было полезно?

Решение

После некоторого расследования это делает вход в систему:

var binding = new BasicHttpBinding();
binding.Security.Mode=BasicHttpSecurityMode.TransportCredentialOnly;
binding.Security.Transport.ClientCredentialType=HttpClientCredentialType.Basic;
var client = new WSClient(binding, new EndpointAddress("http://localhost/myws"));
client.ClientCredentials.UserName.UserName = "xxx";
client.ClientCredentials.UserName.Password = "yyy";
client.doIt();
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top