Potrebbe capire che durante la scrittura di un componente che debba wrappare la logica di una serie di chiamate HTTP, la comunicazione con tale host venga messa in sicurezza dal protocollo HTTPS e di conseguenza da un certificato digitale. Quello che può capire, è che il certificato sia di prova e non valido.
Questa tipologia di errore causa un blocco, ed eventualmente un'eccezione, da parte di tutte le nostre richieste HTTPS verso tale URI. Per risolvere questo problema e quindi ignorare questo errore di certificato, non ci basta che affidarci all'oggetto ServicePointManager, che tramite un event handler associato alla proprietà ServerCertificateValidationCallback, ci permette di gestire questo scenario.
Come possiamo vedere dallo snippet di codice sotto riportato, ci è sufficiente restituire il valore true all'interno del corpo della funzione.
ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, error) => { return true; };
Il punto di forza della classe ServicePointManager è la semplicità di utilizzo: infatti, ci basta ripotare una singola volta questo piccolo snippet di codice in una zona di avvio della nostra applicazione. nel caso specifico di applicazioni WinRT, va fatto all'interno del file App.xaml.cs, per far sì che abbia scope globale all'interno del nostro progetto.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Configurare dependabot per aggiornare le dipendenze di terze parti con GitHub Actions
Creare moduli CSS in React
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Copiare automaticamente le secret tra più repository di GitHub
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Usare Refit e Polly in Blazor per creare client affidabili e fortemente tipizzati
Utilizzare un service principal per accedere a Azure Container Registry
Utilizzare le collection expression in C#
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Inizializzare i container in Azure Container Apps