gpt4 book ai didi

c# - 如何将 SoapHttpClientProtocol 转换为 HTTPS

转载 作者:行者123 更新时间:2023-11-30 17:54:56 25 4
gpt4 key购买 nike

我可以自动转换从 WSDL 创建的 SoapHttpClientProtocol 类以使用 HTTPS 协议(protocol)而不是 HTTP 吗? (如果,如何?)

简单地将 web 服务的 URL 访问从 http:// 更改为 https:// 会导致异常:

The handshake failed due to an unexpected packet format

我的问题是,类(class)非常大(想想 10k SLOC),我不确定我需要如何在这里更改协议(protocol)。

最佳答案

根据我搜索新内容的结果,您应该可以通过添加行来完成

this.Url = "https://example.com:443/servlet_path";
this.Credentials = System.Net.CredentialCache.DefaultCredentials;

到派生的 SoapHttpClientProtocol 类的构造函数和

[System.Web.Services.Protocols.SoapDocumentMethodAttribute(
"http://example.com/servlet_path",
RequestNamespace="http://example.com/",
ResponseNamespace="http://example.com/",
Use=System.Web.Services.Description.SoapBindingUse.Literal,
ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]

到你的函数的定义。在一页中,他们提到如果目标机器没有来自执行机器接受的 CA 的证书,您可能需要覆盖默认证书验证器。

关于c# - 如何将 SoapHttpClientProtocol 转换为 HTTPS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15548415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com