Heim > Backend-Entwicklung > C++ > Wie kann ich den Fehler „Konnte keine Vertrauensbeziehung herstellen' beheben, wenn ich HTTPS-Aufrufe mit HttpClient durchführe?

Wie kann ich den Fehler „Konnte keine Vertrauensbeziehung herstellen' beheben, wenn ich HTTPS-Aufrufe mit HttpClient durchführe?

Susan Sarandon
Freigeben: 2025-01-18 00:24:13
Original
798 Leute haben es durchsucht

How Can I Fix

Verwenden Sie HttpClient, um sichere HTTPS-Anrufe zu tätigen

Frage:

Beim Verwenden von HttpClient zum Senden einer HTTPS-Anfrage tritt ein Fehler auf: „Die zugrunde liegende Verbindung wurde geschlossen: Es konnte keine Vertrauensstellung für den sicheren SSL/TLS-Kanal hergestellt werden.“

Lösung:

Um dieses Problem zu beheben, befolgen Sie bitte diese Schritte:

  1. Sicherheitsprotokoll festlegen:

    Geben Sie das standardmäßig verwendete TLS-Protokoll an. Fügen Sie Ihrem Code die folgenden Zeilen hinzu:

    <code class="language-csharp">System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;</code>
    Nach dem Login kopieren
  2. HttpClient-Code ändern:

    HttpClient-Code geändert, um HTTPS-Aufrufe zu unterstützen:

    <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>
    Nach dem Login kopieren

Zusätzliche Hinweise:

  • Bei dieser Lösung wird davon ausgegangen, dass der Server nur höhere TLS-Versionen unterstützt (z. B. TLS 1.2).
  • Wenn der Server ein benutzerdefiniertes Zertifikat oder einen benutzerdefinierten Schlüssel erfordert, ist eine zusätzliche Konfiguration erforderlich.

Das obige ist der detaillierte Inhalt vonWie kann ich den Fehler „Konnte keine Vertrauensbeziehung herstellen' beheben, wenn ich HTTPS-Aufrufe mit HttpClient durchführe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage