【发布时间】:2014-08-20 10:21:44
【问题描述】:
我需要在 Xamarin Android 和 Xamarin iOS 项目中使用 SOAP 1.2 Web 服务。每次当我尝试向 Web 服务发送请求时,都会出现异常:
System.Net.WebException:处理 Web 请求时出错:状态码 415(UnsupportedMediaType):无法处理消息,因为内容类型为 'text/xml; charset=utf-8' 不是预期的类型 'application/soap+xml; charset=utf-8'。
BasicHttpsBinding binding = new BasicHttpsBinding
{
TextEncoding = System.Text.Encoding.UTF8,
Name = "basicHttpBinding",
MaxBufferSize = 2147483647,
MaxReceivedMessageSize = 2147483647,
MessageEncoding = WSMessageEncoding.Text
};
TimeSpan timeout = new TimeSpan(0, 0, 30);
binding.SendTimeout = timeout;
binding.OpenTimeout = timeout;
binding.ReceiveTimeout = timeout;
binding.Security.Mode = BasicHttpsSecurityMode.Transport;
EndpointAddress endpointAdr = new EndpointAddress("https://my.WebService.Address.svc");
Client client_mc = new Client(binding, endpointAdr);
var data = client_mc.GetUserInfo("db","user","password", "language");
我了解到 Xamarin 不支持 SOAP 1.2 Web 服务。我尝试使用 CustomHttpsBinding 而不是 BasicHttPsBinding,但它似乎不起作用。 Xamarin 中没有 WSHttpBinding。
是否有人对此问题有解决方案或解决方法?
在此先感谢
【问题讨论】:
-
您使用的是什么类型的 Xamarin 许可证?
-
我正在使用 1 个月的免费试用版 - 这就是生意。