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
Utilizzare Container Queries nominali
Utilizzare i variable font nel CSS
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Gestione dei nomi con le regole @layer in CSS
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Utilizzare Locust con Azure Load Testing
Integrare SQL Server in un progetto .NET Aspire
Managed deployment strategy in Azure DevOps
Potenziare la ricerca su Cosmos DB con Full Text Search