我正在尝试从SOAP Web服务获取数据。我能够从测试服务中获取数据。就像这样:
var service = new CurrencyConvertor();
var f = service.ConversionRate(Currency.EUR, Currency.USD);
我将该服务添加为' Web Reference'进入Droid-Project - 与代理类一起使用。
现在我遇到了一个新的网络服务。问题是:我需要提供一个安全标题,我真的无法使用Xamarin。已经尝试在PCL中使用,但我也不能添加Header。
web服务报头:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<Security s:mustUnderstand="1" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:Username>UserName</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">Password</wsse:Password>
</wsse:UsernameToken>
</Security>
</s:Header>
...
该请求适用于SoapUI。
答案 0 :(得分:0)
通过创建第二个wcf服务解决它,消耗上面的那个。在新的一个中,我使用in-code authentification,然后使用security-header调用一个。只有对我有用的解决方案。