c# - RestSharp 如何在 Https 请求中添加客户端证书? (C#)

标签 c# ssl x509certificate restsharp

RestSharp 如何在 Https 请求中添加客户端证书?我的代码不起作用。

    public static IRestResponse<User> AsyncHttpRequestLogIn(string path, string method, object obj)
    {
        var client = new RestClient(Constants.BASE_URL + path); // https:....
        var request = method.Equals("POST") ? new RestRequest(Method.POST) : new RestRequest(Method.GET);
        request.RequestFormat = RestSharp.DataFormat.Json;

        // The path to the certificate.
        string certificate = "cer/cert.cer";     

        client.ClientCertificates.Add(new X509Certificate(certificate));

        request.AddBody(
            obj
        );


        IRestResponse<User> response = client.Execute<User>(request);

        return response;

    }

最佳答案

首先你应该导入证书,然后附加到请求

X509Certificate2 certificate = new X509Certificate2();
certificates.Import(...);

client.ClientCertificates = new X509CertificateCollection(){certificate};

关于c# - RestSharp 如何在 Https 请求中添加客户端证书? (C#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34506086/

相关文章:

web-services - JBoss RESTEasy Web 服务可以使用 x509 证书来保证安全吗?

c# - ASP .NET MVC - 多级 URL 路由

ssl - Tomcat 服务器上 org.bouncycaSTLe.crypto.signers.PSSSigner.generateSignature 的 NullPointerException。 chrome 上的 ERR_SSL_PROTOCOL_ERROR

c# - 如果文件中的函数被重新排序,差异应用程序会变得疯狂

ssl - 通配符 SSL 证书是否可以在没有子域的情况下工作?

java - 关于java中ssl握手和行为的问题

java - 读取数字证书的友好名称

ssl - TLS 客户端证书 : which attribute for authorization?

c# - DELETE 后如何等待结果在 RavenDB 中更新

c# - 为什么 FileSystemInfo 不声明 GetAccessControl 方法?