在 Visual Studio 2015 年使用已弃用的 soap 版本
Consuming deprecated soap versions in Visual Studio 2015
我需要使用 WSDL 文档。自 2003 年起,Microsoft 建议程序使用 SOAP 1.2。
不幸的是,托管我需要的数据的 megacorp 仍在使用 SOAP 1.1。
这会导致 visual studio 在我尝试解析 WSDL 时崩溃。
有没有办法使用 visual studio 使用 WSDL 1.1 文档?
除了使用Soap 1.1,还要注意以下问题
* MIME 类型错误
* SSL 证书无效
* 一些元数据不符合标准
明确地说,我无法控制此 WSDL。它由一家财富500强公司控制。截至2017年,最新版本仍未使用SOAP 1.2。
有多个问题需要解决
- 首先,WSDL 上的端口被强制设置为 80,即使在通过 SSL 时也是如此。解决方案是使用 http.
创建数据契约
- 完成后,我需要转换为 SSL soap 1.1(不是 1.2)。这可以通过将 security mode="Transport" 添加到 basicHttpBinding 来完成。
- 完成后我需要处理 SSl 证书
无效。这有点更深入,但 tldr 是它现在路由到具有有效证书的服务器。
我需要使用 WSDL 文档。自 2003 年起,Microsoft 建议程序使用 SOAP 1.2。
不幸的是,托管我需要的数据的 megacorp 仍在使用 SOAP 1.1。
这会导致 visual studio 在我尝试解析 WSDL 时崩溃。
有没有办法使用 visual studio 使用 WSDL 1.1 文档?
除了使用Soap 1.1,还要注意以下问题
* MIME 类型错误
* SSL 证书无效
* 一些元数据不符合标准
明确地说,我无法控制此 WSDL。它由一家财富500强公司控制。截至2017年,最新版本仍未使用SOAP 1.2。
有多个问题需要解决
- 首先,WSDL 上的端口被强制设置为 80,即使在通过 SSL 时也是如此。解决方案是使用 http. 创建数据契约
- 完成后,我需要转换为 SSL soap 1.1(不是 1.2)。这可以通过将 security mode="Transport" 添加到 basicHttpBinding 来完成。
- 完成后我需要处理 SSl 证书 无效。这有点更深入,但 tldr 是它现在路由到具有有效证书的服务器。