gpt4 book ai didi

c# - 2 方式 ssl web 服务测试

转载 作者:太空宇宙 更新时间:2023-11-03 13:36:42 24 4
gpt4 key购买 nike

我想调用 ssl 网络服务。我有安装在受信任商店中的服务器证书。我正在使用 SOAP UI 工具和 soap sonar 来调用我正在使用的 ssl web 服务以及对服务的 htts 调用。

看起来证书没有通过请求。

我已经创建了一个 C# 应用程序来传递带证书的请求。

但是还是一样的错误。

您能否推荐任何其他工具来测试网络服务?或示例代码?

 private void button4_Click(object sender, EventArgs e)
{
try
{

var clientHandler = new WebRequestHandler();
string address = @"https://xxx.xxx.xxx.xxx:58444/IVR/";
var requestXML = "\\request.xml";
var serialized = File.ReadAllText(Environment.CurrentDirectory + requestXML);
var cert = GetCert();
CertificateWebClient myWebClient = new CertificateWebClient(cert);

string fileName = Environment.CurrentDirectory + requestXML;
myWebClient.Headers.Add("Content-Type", "application/xml;charset=utf-8");
byte[] responseArray = myWebClient.UploadFile(address, fileName);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}


public class CertificateWebClient : WebClient
{
private readonly X509Certificate2 certificate;

public CertificateWebClient(X509Certificate2 cert)
{
certificate = cert;
}

protected override WebRequest GetWebRequest(Uri address)
{
HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
request.ServicePoint.Expect100Continue = true;
request.ServerCertificateValidationCallback =
delegate(Object obj,
X509Certificate X509certificate,
X509Chain chain,
System.Net.Security.SslPolicyErrors errors)
{
if (errors == System.Net.Security.SslPolicyErrors.RemoteCertificateNameMismatch)
{
return true;
}
else
{
return false;
}
};

request.ClientCertificates.Add(certificate);
return request;
}
}

异常(exception):-

请求已中止:无法创建 SSL/TLS 安全通道。

最佳答案

我的证书没有私钥,所以我创建了另一个私钥并使用 how to create a private key 安装了它.之后我就可以连接了。

关于c# - 2 方式 ssl web 服务测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37734239/

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