Java HttpClient获取https C#网络凭据不工作

Java HttpClient获取https C#网络凭据不工作,java,c#,rest,https,Java,C#,Rest,Https,我不知道如何通过带有C#的HTTPS访问REST web服务。我知道如何在Java中实现这一点,但是如何使用c#获得与下面代码相同的行为呢 Java代码 int port= 443; int protocol = "https"; AuthScope authScope = new AuthScope("host", port); DefaultHttpClient client = new DefaultHttpClient(); UsernamePasswordCredentials

我不知道如何通过带有C#的HTTPS访问REST web服务。我知道如何在Java中实现这一点,但是如何使用c#获得与下面代码相同的行为呢

Java代码

    int port= 443;
int protocol = "https";
AuthScope authScope = new AuthScope("host", port);
DefaultHttpClient client = new DefaultHttpClient();
UsernamePasswordCredentials credentials = new UsernamePasswordCredentials("user", "pass");
TrustSelfSignedStrategy strategy = new TrustSelfSignedStrategy();
SchemeSocketFactory schemeFactory = new SSLSocketFactory(strategy);
Scheme https = new Scheme(protocol, port, schemeFactory);
client.getCredentialsProvider().setCredentials(authScope, credentials);
client.getConnectionManager().getSchemeRegistry().register(https);
HttpGet httpget = new HttpGet("https://host/url/item");
HttpResponse response = client.execute(httpget);
这是我的c语言代码

起初,我有下一个例外: c#基础连接已关闭:无法为SSL/TLS安全通道建立信任关系。

但是当我关闭SSL客户端证书验证时

ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(delegate { return true; });
然后响应具有html登录页面,而不是服务的xml响应。 url是正常的,如果我用浏览器测试它,我会得到正确的响应。 该服务由Cisco Web API公开

有什么想法吗


谢谢您的时间。

添加您尝试过的C代码。帮助你会更容易,那么HTTPS是问题还是问题?如果您可以测试HTTP,那么S就是您的问题。这样我们就可以知道您在哪个方向遇到问题。这可能会有所帮助:我认为不需要从客户端发送证书。我不知道它是否与我在浏览服务时下载的证书相同。在java中是不需要的。关于身份验证问题有什么想法吗?解决方案是在请求中手动添加标头:)。
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(delegate { return true; });