O que é Axios?
Axios é um cliente HTTP popular para JavaScript que funciona tanto no navegador quanto no ambiente Node.js. Ele é baseado em Promises e fornece uma API conveniente para realizar requisições HTTP. A biblioteca processa automaticamente JSON, suporta interceptadores (interceptors), cancelamento de requisições e proteção contra CSRF.
Para que serve o Axios?
Diferente do fetch nativo, o Axios oferece uma funcionalidade mais rica "pronta para uso": transformação automática de dados, barras de progresso para upload, timeouts, tentativas repetidas e compatibilidade com navegadores antigos. Para desenvolvedores Node.js, é uma ferramenta indispensável para interagir com REST APIs, microsserviços e serviços externos.
Instalação
Instale a biblioteca via npm ou yarn:
npm install axiosOu para uso global:
npm install -g axiosFuncionalidades principais
- Suporte a todos os métodos HTTP: GET, POST, PUT, DELETE, PATCH e outros.
- Serialização/desserialização automática de JSON.
- Interceptadores de requisições e respostas para logging, autenticação e tratamento de erros.
- Cancelamento de requisições via AbortController (API moderna) ou CancelToken (obsoleto).
- Timeouts e tentativas repetidas (via plugins ou configuração manual).
- Upload de arquivos com progresso (através de
onUploadProgress).
Exemplo de código em Node.js
const axios = require('axios');
async function getPost(id) { try { const response = await axios.get(`https://jsonplaceholder.typicode.com/posts/${id}`); console.log('Dados:', response.data); } catch (error) { console.error('Erro:', error.message); }}
getPost(1);
// POST-request com dadosconst newPost = { title: 'Título', body: 'Texto do post', userId: 1,};
axios.post('https://jsonplaceholder.typicode.com/posts', newPost) .then(res => console.log('Criado:', res.data)) .catch(err => console.error('Erro:', err));Quando usar Axios
Axios é ideal para projetos que exigem um cliente HTTP confiável com recursos avançados: aplicações corporativas, arquitetura de microsserviços, integração com APIs externas, e também para casos que necessitam de compatibilidade reversa com versões antigas do Node.js (anteriores à 18.x). Se você prefere soluções leves, considere node-fetch ou o fetch nativo do Node.js 18+.
Conclusão
Axios continua sendo o padrão de facto para requisições HTTP no ecossistema JavaScript. Graças à sua simplicidade, flexibilidade e comunidade extensa, esta biblioteca é adequada tanto para protótipos rápidos quanto para grandes sistemas de produção.
Também na biblioteca
Qt para C++: guia completo com exemplos
Envio de email em Swift: bibliotecas e exemplos para iOS/macOS
Testes em C++: visão geral de frameworks e ferramentas (Google Test, Catch2, doctest)
Autorização e Autenticação em Java: Spring Security e JWT
Trabalhando com Excel em PHP: bibliotecas PhpSpreadsheet e OpenSpout