如何解决通过带有数字证书的WCF消费Web服务
我正在开发一个需要使用Web服务(WSDL)的应用程序。要访问此WSDL,我需要使用certificate.pfx。我已经在计算机上安装了该证书。我已经设法通过浏览器和SOAPUi访问此WS。但是,当我尝试通过Visual Studio(WCF / .net核心)导入WSDL时,出现以下错误:
尝试在以下位置查找服务时发生错误 'https://xxxxxxx-spi-homo-ws-site1.xxxx.com/wsdl'。远程服务器 返回错误:(403)禁止。
当我尝试通过.NET Framework 4.7使用WS时,单击“项目>添加服务引用>高级>添加Web引用”,要求确认证书(图1)。当我单击OK时,它会给出另一个错误(图2)。
我尝试在浏览器中执行“另存为...”并创建了一个.wsdl文件,并通过“ Visual Studio”的“浏览”进行了导入,并给出了以下错误:
我想知道我如何使Visual Studio使用证书访问WSDL。
解决方法
如果您可以在浏览器中打开WSDL文件,则可以将其保存在本地:
然后,您可以使用svcutil生成代理类,svcutil是一个.NET工具,可从网络位置上的Web服务或WSDL文件中检索元数据,并生成包含访问Web的客户端代理方法的WCF类。服务操作。
您可以在VS的命令行界面上使用此工具:
执行上述命令将在磁盘D上生成一个代理类和配置文件。然后将这两个文件添加到您的项目中。
如果问题仍然存在,请随时告诉我。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。