首页 > 解决方案 > 如何调用安全的 Web 服务

问题描述

我收到消息“System.Net.WebException:HTTP 请求被客户端身份验证方案‘匿名’禁止。” 尝试使用 BizTalk 2013在“ https://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php ”调用 Web 服务时。

我直接从站点导入了 wsdl,创建了模式和绑定以进行调用。发送端口设置为 WCF-BasicHttp,安全模式:传输,传输客户端凭据类型:无。我可以使用 BizTalk 服务器中的 SOAP-UI 调用该服务,但不提供任何形式的身份验证。

已阅读大量帖子和文档,但到目前为止我所做的一切都没有帮助。我确定我错过了一些东西;只是不确定那是什么东西!

标签: web-serviceshttpswsdlbiztalk

解决方案


从 WSDL 的外观来看:<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>它是一个 RPC 类型的 Web 服务

就像文档中指定的那样:'WCF 适配器不支持使用远程过程调用 (RPC) 样式的 Web 服务,因为 RPC 样式的 Web 服务中的消息部分是指消息类型而不是 WCF 适配器使用元素的消息元素对于消息部分。我们建议您通过添加 Web 引用向导添加 RPC 样式的 Web 服务,以便在 BizTalk 项目中使用 Web 服务。


推荐阅读