.net core中引用webservice,并忽略https证书验证

1.打开vs, 工具-->扩展和更新

下载这个

.net core中引用webservice,并忽略https证书验证_第1张图片

 

2.

在admin下右键,添加-->connected service

.net core中引用webservice,并忽略https证书验证_第2张图片

.net core中引用webservice,并忽略https证书验证_第3张图片

选择wsdl文件路径,或者服务的url,比如https://****

点击go ,Services栏中会显示搜索出来一个服务,

可以在Namespace栏中修改服务引用的名称

.net core中引用webservice,并忽略https证书验证_第4张图片

 再点击finish就完成了。

 目录下会看到多的文件夹

然后再程序中调用(自己起的服务名NciicServices下找后面带有Client的类就是生成的代理类)

但如果服务访问https可能会有证书问题导致添加服务失败,在windows装上数字证书后才可以成功添加服务,但部署到linux系统上后访问会报异常

System.AggregateException: One or more errors occurred. (An error occurred while sending the request.) ---> System.ServiceModel.CommunicationException: An error occurred while sending the request. ---> System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.Http.CurlException: Peer certificate cannot be authenticated with given CA certificates

 

此时在调用服务之前添加如下一段代码即可

.net core中引用webservice,并忽略https证书验证_第5张图片

这样就跳过证书验证了。

 

转载于:https://www.cnblogs.com/zshblogs/p/6962941.html

你可能感兴趣的:(.net core中引用webservice,并忽略https证书验证)