2013-01-17 155 views
5

我有一个Windows商店应用(Metro App),我想要连接通过HTTPS构建的Web服务。我正在为我的Web服务使用自签名证书。但是当我试图通过System.Net.HttpClient.PostAsync尝试从我的应用程序连接它时,我收到了一个异常,表示Windows应用商店应用通过自签名SSL证书连接到HTTPS

“底层连接已关闭:无法建立SSL/TLS安全通道的信任关系。

内部异常说 “根据验证过程,远程证书无效。”

我知道这是因为我正在使用自签名证书。我记得在.NET中,我可以使用System.Net.ServicePointManager.ServerCertificateValidationCallback,以便我的应用程序可以通过验证,如果指纹是我的。

但我无法在Windows Store运行时找到相关的类/方法。我怎样才能做到这一点?

+0

Duplicate http://stackoverflow.com/questions/13119649/how-to-trust-a-self-signed-certificate-in-a-windows-store-app – ReinierDG

回答

0

首先,你应该最好使用Windows.Web.HttpClient。在该API上,您可以使用httpClient.HttpBaseProtocolFilter.IgnorableServerCertificateErrors来设置您愿意接受的证书错误。例如,您可以选择忽略不可信的错误,但您应该在实际发送任何数据之前手动检查指纹。

+0

如果我使用[Microsoft.Net .http](https://www.nuget.org/packages/Microsoft.Net.Http/)包? – TIKSN

相关问题