https WebリクエストからXMLドキュメントを作成しようとしていますが、サイトに無効な証明書があると、XMLドキュメントを機能させるのに問題があります。私は自分のアプリケーションが証明書を気にしないようにしたいのです。私はそれが恐れることなくその人生を生き生きとさせたいのです!
これが私が持っていた最初のコードです。これは、標準のhttp(非SSL)リクエストから必要なものを取得するために以前に使用したことがあります。
XmlDocument xml = new XmlDocument();
XmlTextReader reader = new XmlTextReader("https://www.example.com");
xml.Load(reader);
サイトに無効なSSL証明書があると、次のエラーが発生します。
要求は中止されました:SSL/TLSのセキュリティで保護されたチャネルを作成できませんでした。
今、私はグーグルをやって、いくつかの有望な解決策を試しましたが、それは役に立たないようです。
ここでSOで試したものは良さそうに見えましたが、機能しなかったようです。上記のコードの直前に「承認された回答」のコード行を追加しました。
違いが生じる場合に備えて、私のコードはクラスライブラリにあり、コンソールアプリを介してテストしています。.Net4も使用しています。
これが私の最新の試みです(これは機能しません):
XmlDocument xml = new XmlDocument();
ServicePointManager.ServerCertificateValidationCallback += new System.Net.Security.RemoteCertificateValidationCallback((s, ce, ch, ssl) => true);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlCommand);
request.Credentials = CredentialCache.DefaultCredentials;
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (Stream receiveStream = response.GetResponseStream())
{
XmlTextReader reader = new XmlTextReader(receiveStream);
xml.Load(reader);
}
}