ホームページ > バックエンド開発 > C++ > SSL エラーにもかかわらず、WebRequest を使用してプログラムで HTTPS コンテンツにアクセスする方法

SSL エラーにもかかわらず、WebRequest を使用してプログラムで HTTPS コンテンツにアクセスする方法

Susan Sarandon
リリース: 2025-01-03 06:31:49
オリジナル
417 人が閲覧しました

How to Programmatically Access HTTPS Content Using WebRequest Despite SSL Errors?

WebRequest を使用して HTTPS 経由で SSL 暗号化コンテンツにプログラム的にアクセスする

WebRequest 経由で URL を操作する場合、SSL 暗号化が原因で問題が発生することは珍しくありません。この記事は、このような課題を克服するソリューションを提供することを目的としています。

指定されたコード スニペットは URL からコンテンツを取得しようとしますが、URL が HTTPS プロトコルを使用している場合にエラーが発生します。この状況に対処するには、SSL 暗号化コンテンツに対応できるようにコードを調整することが不可欠です。

重要な解決策は、SSL 証明書の検証を処理できるデリゲートである ServicePointManager.ServerCertificateValidationCallback を導入することにあります。デフォルトの動作をオーバーライドすることで、無効な可能性のある証明書を含むすべての証明書を受け入れるようにコードに指示できます。

これを実現するには、Web リクエストを行う前に次の行を追加します。

ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
ログイン後にコピー

次に、true を返す AcceptAllCertifications という単純なメソッドを作成します。

public bool AcceptAllCertifications(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certification, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors)
{
    return true;
}
ログイン後にコピー

これらの変更により、コードは次のようになります。証明書の有効性に関係なく、HTTPS 暗号化を使用する URL にアクセスしてコンテンツを読み取ることができます。

以上がSSL エラーにもかかわらず、WebRequest を使用してプログラムで HTTPS コンテンツにアクセスする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート