La classe HttpClient in Windows.Web.Http espone una serie di metodi per integrarsi al meglio con le API asincrone di WinRT.
Ad esempio, il metodo GetAsync restituisce un IAsyncOperationWithProgress
Tra gli overload del metodo possiamo passare come parametro un oggetto di tipo CancellationToken con cui possiamo controllare il task asincrono. Il CancellationToken è esposto come proprietà di CancellationTokenSource oltre a vari metodi, ad esempio con CancelAfter possiamo impostare il tempo in cui il task sarà cancellato dal momento della sua creazione.
var cts = new CancellationTokenSource();
cts.CancelAfter(2000);
var client = new HttpClient();
var response = await client.GetAsync(new Uri("https://www.winrtitalia.com")).AsTask(cts.Token);
if (!response.IsSuccessStatusCode)
{
//messaggio
return;
}
var txt = await response.Content.ReadAsStringAsync();Nell'esempio, la chiamata HTTP sarà annullata se la sua risposta non arriverà entro il tempo impostato come timeout nel metodo CancelAfter.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare noopener e noreferrer nei link HTML
Importare repository da Bitbucket a GitHub Enterprise Cloud
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Impostare la content-visibility in CSS per ottimizare il rendering iniziale di una pagina
Integrare SQL Server in un progetto .NET Aspire
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Utilizzare Hybrid Cache in .NET 9
Configurare OpenTelemetry per Application Insights su ASP.NET Core
Evitare memory leaks nelle closure JavaScript
Gestione dei prompt file a livello di organizzazione aziendale in GitHub
Ospitare n8n su Azure App Service




