Angular è fortemente basato sulle Reactive Extension. Un tipico esempio di questa affermazione lo si trova nell'esecuzione delle chiamate HTTP. Una chiamata HTTP, sia che la si effettui con la classe Http che con la classe HttpClient, restituisce un oggetto di tipo Observable<T>. Le Reactive Extension permettono di realizzare in poco tempo funzionalità che con le Promise sono realizzabili solo atteverso la scrittura di molto codice.
Un tipico esempio sono le retry in una chiamata HTTP. Esistono molti casi in cui una chiamata HTTP può andare in errore (mancanza temporanea di connessione, server momentaneamente non disponibile, e così via). In questi casi possiamo decidere di effettuare nuovamente la chiamata un certo numero di volte prima di sollevare realmente un'eccezione. Utilizzando le Reactive Extensions tutto questo può essere fatto utilizzando il metodo retry.
import 'rxjs/add/operator/retry'; ... http.get<Person>('/api/person/1') .retry(3) .subscribe(//code);
In questo caso, la chiamata all'URL viene eseguita fino a un massimo di tre volte prima di andare in errore.
Questa stessa funzione è realizzabile anche utilizzando una Promise, ma dobbiamo scrivere a mano del codice che utilizzando le Reactive Extension abbiamo già a disposizione.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Testare il failover sulle region in Azure Storage
Utilizzare Container Queries nominali
Creare una libreria CSS universale: Cards
Utilizzare WebJobs su Linux con Azure App Service
Utilizzare Intersect e Except per filtrare set di dati in TSql
Utilizzare i variable font nel CSS
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Triggerare una pipeline su un altro repository di Azure DevOps
Eseguire script pre e post esecuzione di un workflow di GitHub
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- The Agentic Day - Milano
- .NET Conference Italia 2025 - Milano
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Gestione ciclo di vita in .NET Aspire