هدية ترحيبية مميزة! احصل على خصم ٣٠٪ على أول عملية شراء باستخدام الكود “Eldjazairi”. تعرّف على المزيد!

Consommation d’une API avec Angular 21

La consommation d’API dans Angular se fait principalement via le module HttpClient inclus dans @angular/common/http. Il permet d’effectuer des requêtes HTTP (GET, POST, PUT, DELETE) vers un backend, généralement en JSON, en utilisant des services pour centraliser la logique et des observables (RxJS) pour gérer les données asynchrones.

Tout d’abord

Avant toute chose, vous devez vous assurer que le service HttpClient est importé dans votre application. Si ce n’est pas le cas, vous pouvez le faire en ajoutant provideHttpClient() à la liste des fournisseurs de votre application.

Allez dans src/app/app.config.ts

L’interface User en TypeScript de la requête

Voici un exemple d’interface qui pourrait être utilisée pour représenter les utilisateurs de cette URL

// user.interface.ts
interface User {
  id: number;
  name: string;
  username: string;
  email: string;
}

Cette interface définit les propriétés des utilisateurs qui peuvent être retournés par l’URL https://jsonplaceholder.typicode.com/users, telles que l’identifiant de l’utilisateur, son nom, son nom d’utilisateur, son adresse électronique, etc. Vous pouvez utiliser cette interface pour stocker et manipuler les données des utilisateurs de cette URL dans votre application TypeScript.

https://jsonplaceholder.typicode.com/users, Une API en ligne pour test …..

Injecter HttpClient

Vous pouvez injecter HttpClient dans un service:

Vous pouvez ensuite utiliser ce service dans un composant pour récupérer la liste d’utilisateurs et l’afficher dans le composant en utilisant la méthode subscribe de l’objet Observable retourné par le service.

Pourquoi faire la requête dans ngOnInit dans Angular

L’utilisation de la méthode ngOnInit dans Angular est recommandée pour les opérations d’initialisation qui ne doivent être effectuées qu’une seule fois au cours du cycle de vie d’un composant. Cela permet de s’assurer que les données requises pour le composant sont disponibles avant que celui-ci ne soit affiché à l’écran.

En faisant la requête dans la méthode ngOnInit, vous pouvez être sûr que les données sont chargées avant que le composant ne soit rendu, ce qui évite des erreurs potentielles lors de l’affichage de données manquantes ou non actualisées. Cela peut également aider à améliorer les performances en évitant d’exécuter des opérations inutiles ou coûteuses en temps d’exécution.

Faut il se désinscrire à la requête dans Angular

En Angular, les observables issus du package HttpClient complètent automatiquement lorsque la requête est terminée. Cela signifie que vous n’avez pas besoin de vous désinscrire explicitement pour éviter les fuites de mémoire dans ce scénario précis.

Concernant l’arrêt des requêtes HTTP en cours lors du changement de route, cela peut être important pour les raisons suivantes :

Performance : Cela évite d’exécuter des requêtes inutiles si l’utilisateur change de route avant qu’une requête ne soit terminée.

Performance : Cela évite d’exécuter des requêtes inutiles si l’utilisateur change de route avant qu’une requête ne soit terminée.

Éviter les erreurs inattendues : Si une requête HTTP est toujours en cours et que l’utilisateur change de route, la requête pourrait tenter de mettre à jour une partie de l’application qui n’existe plus ou qui a changé, entraînant des erreurs.

Réduction de l’utilisation des ressources : Annuler une requête HTTP inutile peut également aider à réduire l’utilisation des ressources côté serveur et côté client.

Pour annuler les requêtes HTTP lors du changement de route, vous pouvez utiliser l’opérateur takeUntil avec un Subject qui émet une valeur lors de la destruction du composant (par exemple, dans la méthode ngOnDestroy).

Share:

Leave A Reply

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

قد يعجبك أيضاً