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
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
Eseguire operazioni sui blob con Azure Storage Actions
Utilizzare i primary constructor di C# per inizializzare le proprietà
Utilizzare le collection expression in C#
Utilizzare Azure AI Studio per testare i modelli AI
Evitare il flickering dei componenti nel prerender di Blazor 8
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Utilizzare database e servizi con gli add-on di Container App
Effettuare il binding di date in Blazor
Creare alias per tipi generici e tuple in C#
Modificare i metadati nell'head dell'HTML di una Blazor Web App
I più letti di oggi
- Aggiungere il metodo SelectMany alla classe Array in TypeScript
- Usare gateway dedicati con Azure Cosmos DB per migliorare le prestazioni
- Recuperare i Popup aperti in una Windows Store app
- AI&ML Conf 2020 - Online
- Preview 4 per ASP.NET MVC
- Speciale Windows Store app: costruire app con WinRT per Windows 8
- Microsoft Security Bulletin MS02-050
- Microsoft Security Bulletin MS04-033
- Attivare l'output caching su ASP.NET Web API
- Ottimizzare l'utilizzo di banda tramite ETag in ASP.NET Core Web API