Qu'est-ce qu'Axios ?
Axios est un client HTTP populaire pour JavaScript, fonctionnant à la fois dans le navigateur et dans l'environnement Node.js. Il est basé sur les promesses (Promise) et fournit une API pratique pour effectuer des requêtes HTTP. La bibliothèque gère automatiquement le JSON, prend en charge les intercepteurs (interceptors), l'annulation de requêtes et la protection contre CSRF.
Pourquoi utiliser Axios ?
Contrairement au fetch natif, Axios offre des fonctionnalités plus riches « prêtes à l'emploi » : transformation automatique des données, barres de progression pour le téléchargement, délais d'attente, tentatives répétées et compatibilité avec les navigateurs obsolètes. Pour les développeurs Node.js, c'est un outil indispensable pour interagir avec les API REST, les microservices et les services externes.
Installation
Installez la bibliothèque via npm ou yarn :
npm install axiosOu pour une utilisation globale :
npm install -g axiosFonctionnalités principales
- Prise en charge de toutes les méthodes HTTP : GET, POST, PUT, DELETE, PATCH, etc.
- Sérialisation/désérialisation JSON automatique.
- Intercepteurs de requêtes et de réponses pour la journalisation, l'authentification et la gestion des erreurs.
- Annulation de requêtes via AbortController (API moderne) ou CancelToken (obsolète).
- Délais d'attente et tentatives répétées (via des plugins ou une configuration manuelle).
- Téléchargement de fichiers avec progression (via
onUploadProgress).
Exemple de code sur Node.js
const axios = require('axios');
async function getPost(id) { try { const response = await axios.get(`https://jsonplaceholder.typicode.com/posts/${id}`); console.log('Données :', response.data); } catch (error) { console.error('Erreur :', error.message); }}
getPost(1);
// Requête POST avec des donnéesconst newPost = { title: 'Titre', body: 'Texte du post', userId: 1,};
axios.post('https://jsonplaceholder.typicode.com/posts', newPost) .then(res => console.log('Créé :', res.data)) .catch(err => console.error('Erreur :', err));Quand utiliser Axios
Axios est idéal pour les projets nécessitant un client HTTP fiable avec des fonctionnalités avancées : applications d'entreprise, architecture de microservices, intégration avec des API externes, ainsi que pour les cas nécessitant une rétrocompatibilité avec les anciennes versions de Node.js (jusqu'à 18.x). Si vous préférez des solutions légères, envisagez node-fetch ou le fetch natif dans Node.js 18+.
Conclusion
Axios reste la norme de facto pour les requêtes HTTP dans l'écosystème JavaScript. Grâce à sa simplicité, sa flexibilité et sa vaste communauté, cette bibliothèque convient aussi bien aux prototypes rapides qu'aux grands systèmes de production.
Aussi dans la bibliothèque
Travailler avec les archives ZIP en C# (.NET) : guide complet
Event Bus et le pattern Observer en Go (Golang) : implémentation et exemples