AJAX – FlowDigital
AJAX (Asynchronous JavaScript and XML) é uma técnica que permite ao navegador buscar ou enviar dados ao servidor sem recarregar toda a página. Isso deixa a interface mais rápida e interativa. Embora o nome mencione XML, hoje o formato mais usado com AJAX é o JSON, por ser mais leve e fácil de manipular em JavaScript.
Benefícios:
- Carregamento assíncrono: atualiza partes da página sem recarregar tudo.
- Melhora a experiência do usuário com respostas mais rápidas.
- Menos tráfego: o cliente pede só o que precisa.
- Funciona com vários formatos: JSON, XML, HTML e texto.
- Amplo suporte nos navegadores modernos.
- Base para UIs mais ricas (SPA, dashboards, buscas instantâneas).
Ciclo de vida:
- O JavaScript dispara uma requisição (via
XMLHttpRequestoufetch()). - O servidor processa a requisição (busca no banco, valida, monta resposta).
- O servidor responde com dados (geralmente JSON).
- O JavaScript recebe os dados e atualiza o DOM (ex.: preencher tabela, lista, alerta).
- Tratar erros (timeout, 4xx, 5xx) e exibir mensagens ao usuário.
- Monitorar e ajustar se o endpoint mudar ou o volume de dados crescer.
Arquitetura:
- Cliente (JS): faz requisição assíncrona sem recarregar a página.
- Servidor: recebe, processa e devolve dados (JSON/XML/HTML).
- HTTP (GET/POST): transporte padrão das requisições.
- Callback/Promises: funções que tratam a resposta e atualizam a interface.
- Atualização parcial de tela: só o trecho necessário do DOM é modificado.
Recursos:
- Requisições assíncronas com
fetch()ouXMLHttpRequest. - Integração com APIs RESTful.
- Uso de JSON para troca de dados mais leve.
- Interatividade em tempo quase real (autocompletar, filtros, paginação).
- Disparo por eventos de usuário (clique, submit, digitação).
- Compatível com frameworks modernos que ainda usam requisições AJAX sob o capô.
News