本文介绍了你怎么能证书添加到Web客户端(C#)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我知道这是pretty简单的证书添加到HttpWebRequest的。但是,我还没有找到一个方式做使用Web客户端等效的。基本上,我想用WebClient的特定证书发出一个POST。
你会如何使用完成此的WebClient确切code:
VAR请求=(HttpWebRequest的)WebRequest.Create(我的URL);
request.Method =POST;
request.ClientCertificates.Add(新x509证书()); //添加证书
解决方案
您必须继承和覆盖一个或多个功能。
类MyWebClient:Web客户端
{
保护覆盖的WebRequest GetWebRequest(URI地址)
{
HttpWebRequest的要求=(HttpWebRequest的)base.GetWebRequest(地址);
request.ClientCertificates.Add(新x509证书());
返回请求;
}
}
I know it is pretty simple to add a certificate to a HttpWebRequest. However, I have not found a way to do the equivalent using WebClient. Basicly, I want to send out a POST with a specific certificate using WebClient.
How would you accomplish this exact code using WebClient:
var request = (HttpWebRequest) WebRequest.Create("my-url");
request.Method = "POST";
request.ClientCertificates.Add(new X509Certificate()); //add cert
解决方案
You must subclass and override one or more functions.
class MyWebClient : WebClient
{
protected override WebRequest GetWebRequest(Uri address)
{
HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);
request.ClientCertificates.Add(new X509Certificate());
return request;
}
}
这篇关于你怎么能证书添加到Web客户端(C#)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!