C# 通过https调用web服务

C# 通过https调用web服务,c#,web-services,https,C#,Web Services,Https,在C#中,通过https调用web服务需要什么? 我需要从站点获取证书吗?如何使用它来调用web服务?通过https调用web服务与通过http调用web服务没有什么特别或不同之处。您可以使用(或在VS中添加服务引用)或调用该方法从WSDL生成客户机代理。较低级别的类和最终将处理实际的调用和证书,但它对您的代码应该是透明的。当然,承载web服务的服务器需要提供有效的证书。但是,某些证书可能会出现已知问题。请参见您是否拥有web服务提供商提供的客户端证书 如果是这样的话,根据您使用的.NET版本的

在C#中,通过https调用web服务需要什么?
我需要从站点获取证书吗?如何使用它来调用web服务?

通过
https
调用web服务与通过
http
调用web服务没有什么特别或不同之处。您可以使用(或在VS中添加服务引用)或调用该方法从WSDL生成客户机代理。较低级别的类和最终将处理实际的调用和证书,但它对您的代码应该是透明的。当然,承载web服务的服务器需要提供有效的证书。

但是,某些证书可能会出现已知问题。请参见

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


如果是这样的话,根据您使用的.NET版本的不同,有多种不同的方法来实现这一点。您使用的是什么版本?您在如何生成客户端代理类方面受到限制吗?

我认为您使用的是Visual Studio来创建项目,如果您使用的是Visual Studio,那么这很容易做到。我认为您有要连接的web服务的url,它以HTTPS开头


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

你好,达林。你能详细说明一下吗?我有一个类似的问题,我在SSIS包中调用一个webmethod。以前webmethod可以很好地使用HTTP,但现在使用HTTPS。现在我无法调用webmethod。你能指引我吗?我在用c#进行开发。非常感谢。