通过https呼叫Web服务

时间:2009-11-12 20:47:43

标签: c# web-services https

在C#中通过https调用Web服务需要什么? 我是否需要从网站获取证书?如何使用它来调用Web服务?

4 个答案:

答案 0 :(得分:4)

https上调用网络服务比在http上调用网络服务没有什么特别或不同。您可以使用svcutil.exe(或在VS中添加服务引用)或wsdl.exe从WSDL生成客户端代理并调用该方法。较低级别的类HttpWebRequestHttpWebResponse最终会处理实际的调用和证书,但它应该对您的代码透明。当然,托管Web服务的服务器需要提供有效的证书。

答案 1 :(得分:1)

我认为您使用Visual Studio来创建项目,如果您这样做很容易。我认为您拥有要连接的Web服务的URL,它以HTTPS开头。

在解决方案资源管理器中的项目中(假设您使用的是Visual Studio),您应该看到一个节点说“引用”,另一个节点说“Web引用”。右键单击“Web引用”,然后基本上按照向导进行操作。这很直截了当。您可以指定自己的命名空间。我通常使用SomethingAPI格式。然后像您希望项目中的任何其他对象一样使用API​​。你将获得智能感知和所有。

答案 2 :(得分:0)

但是,某些证书可能会出现已知问题。见http://support.microsoft.com/kb/823177/en-us

答案 3 :(得分:0)

您是否拥有由Web服务提供商提供的客户端证书?

如果是这样,根据您使用的.NET版本,有多种不同的方法可以执行此操作。您使用的是哪个版本,是否限制了如何生成客户端代理类?