我正在尝试将我开发的两个旧的集成工具与NetSuite接口更新到最新的web服务端点,它位于以下网址:
https://webservices.netsuite.com/wsdl/v2018_1_0/netsuite.wsdl
我做了通常的旅行来添加WSDL:
将
然而,我总是得到以下信息:
下载'https://webservices.netsuite.com/wsdl/v2018_1_0/netsuite.wsdl/_vti_bin/ListData.svc/$metadata‘时出错。请求已中止:无法创建SSL/TLS安全通道。
我已经顺利地从浏览器下载了WSDL文件,并尝试使用wsdl.exe,包括文件和URL。使用URL,我得到了与上面相同的消息。使用该文件,我得到了以下内容:
错误:无法从命名空间'urn:platform_2018_1.webservices.netsuite.com'.导入绑定'NetSuiteBinding‘
我发现的一些建议包括下载WSDL中列出的所有XSD文件作为导入,并在运行wsdl.exe时列出它们。这会导致一个不同的错误:
错误:无法从命名空间'urn:platform_2018_1.webservices.netsuite.com'.导入绑定'NetSuiteBinding‘
我想这可能是TLS的问题,也许我的机器没有使用正确的版本,但我已经检查并更新了IE和注册表设置,以强制使用TLS 1.2,但没有取得积极的结果。我还认为可能是我的机器出了问题,所以我把文件和wsdl.exe从我的win7Pro机器发送到win10Pro机器上。结果也是一样的。
我在这里非常困惑,因为我上次关闭NetSuite wsdl时没有遇到这些问题,我甚至尝试过旧的wsdl,也得到了同样的结果。我真的不知道现在该怎么办。
发布于 2018-06-08 06:43:39
您的项目使用的是什么版本的.net?我认为TLS1.2默认情况下直到.net 4.6.1才可用。
发布于 2018-06-12 01:44:03
好了,我想我已经想好了。我相信,由于NetSuite推动了TLS1.2的使用,这最终成为了原因。我安装了Visual Studio 2017并制作了一个测试控制台应用程序,然后尝试从那里下载web服务。它成功了。因此,我只能假设VS2012不能使用TLS1.2通信,因此导致生成NetSuite web服务的尝试失败,而VS2017可以使用TLS1.2,这就是它成功的原因。我想我需要把我所有的项目移植到VS 2017,并从现在开始使用它。
https://stackoverflow.com/questions/50751060
复制相似问题