8

在某些情况下,您希望您的应用程序接受无效的 SSL 证书(测试环境/自签名证书等)。

在 .NET 世界中,人们会使用ServerCertificateValidationCallback该类来做到这一点。不幸的是,该类在 WinRT 上下文中不存在。

我需要使用托管在没有有效 ssl 证书的服务器上的 WinRT 使用 Web API。

如何使用HttpClient类或任何其他适当的类在 WinRT 中接受无效的 ssl 证书。

任何帮助或替代方案将不胜感激。

4

2 回答 2

4

以下代码适用于调试场景:

var filter = new HttpBaseProtocolFilter();
#if DEBUG
    filter.IgnorableServerCertificateErrors.Add(ChainValidationResult.Expired);
    filter.IgnorableServerCertificateErrors.Add(ChainValidationResult.Untrusted);
    filter.IgnorableServerCertificateErrors.Add(ChainValidationResult.InvalidName);
#endif
using (var httpClient = new HttpClient(filter)) {
    ...
}
于 2015-02-27T10:30:05.167 回答
-1

在silverlight中,这是不允许的。我还没有看到任何说它在winrt中是允许的。

于 2012-10-18T20:43:32.883 回答