WebService client
От: egorovshura  
Дата: 12.04.06 11:54
Оценка:
Всем привет!

Я пытаюсь вызвать WebService из приложения для КПК. Использую Compact Framework 2. Проблема в том, что сервис требует

аутентификацию и я не могу ее выполнить.
Я попытался использовать следующий код:

service.Credentials = new NetworkCredential(tbUsername.Text,tbPassword.Text);
service.PreAuthenticate = true;

Но это не сработало.

В документации по этому сервису написано, что для аутентификации SOAP header должен выглядеть следующим образом:

<SOAP-ENV:Header>
<wsse:Security
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecuri
ty-secext-1.0.xsd">
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</SOAP-ENV:Header>

Также там приведен демонстрационый проект, использующий этот сервис, но он работает в NET Framework 1.1 с
Web Service Enhancements 2.0. Насколько я понял в для Compact Framework нет Web Service Enhancements.

В библиотеке opennetcf.org есть класы для работы с Веб сервисами, только непонятно как их использовать и помогут ли они в моем

случае.

Можно ли каким-то способом перехватить SOAP запрос перед тем как он отсылается на сервер и в этот момент модифицировать его

для добавления полей аутентификации?

Посоветуйте что-нибудь, пожалуйста. Заранее спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.