HttpClient を使用して安全な HTTPS 呼び出しを行う
質問:
HttpClient を使用して HTTPS リクエストを行うと、「基になる接続が閉じられました: SSL/TLS セキュア チャネルの信頼を確立できません。」というエラーが発生します。
解決策:
この問題を解決するには、次の手順に従ってください:
セキュリティプロトコルの設定:
デフォルトで使用される TLS プロトコルを指定します。コードに次の行を追加します:
<code class="language-csharp">System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;</code>
HttpClient コードを変更します:
HTTPS 呼び出しをサポートするために HttpClient コードを変更しました:
<code class="language-csharp">HttpClient httpClient = new HttpClient(); System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; httpClient.BaseAddress = new Uri("https://foobar.com/"); httpClient.DefaultRequestHeaders.Accept.Clear(); httpClient.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/xml")); var task = httpClient.PostAsXmlAsync<devicerequest>("api/SaveData", request);</code>
追加メモ:
以上がHttpClient で HTTPS 呼び出しを行うときに発生する「信頼関係を確立できませんでした」エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。