NG-ALAIN é um framework front-end de nível empresarial baseado em NG-ZORRO, oferecendo componentes ricos e melhores práticas de desenvolvimento. Este artigo explora em detalhe três funcionalidades avançadas do NG-ALAIN: interceptadores, gerenciamento de cache e mecanismos de tratamento de erros, auxiliando desenvolvedores a construir sistemas administrativos estáveis e confiáveis de forma rápida.
Interceptores HTTP Poderosos: A Solução Definitiva para Processamento Unificado de Requisições
Os interceptores HTTP representam uma funcionalidade central do NG-ALAIN, permitindo que os desenvolvedores processem requisições antes do envio e respostas após o recebimento de forma unificada. Por meio dos interceptores, podemos implementar facilmente a adição de tokens de autenticação, configuração unificada de cabeçalhos e prefixos de endereços de API.
No NG-ALAIN, a configuração dos interceptores concentra-se principalmente no arquivo src/app/core/net/default.interceptor.ts. Este arquivo define a função defaultInterceptor, responsável por processar todas as requisições e respostas HTTP.
A funcionalidade principal dos interceptores inclui:
- Prefixo de API Unificado: Adiciona automaticamente o endereço base da API ao URL da requisição, evitando a repetição de código
- Processamento de Cabeçalhos: Através da função
getAdditionalHeaders, adiciona cabeçalhos extras de forma unificada - Tratamento de Resposta: Utiliza a função
handleDatapara processar respostas com diferentes códigos de status - Tratamento de Erros: Processa de forma unificada códigos de status como 401 e 403, como redirecionamento automático para a página de login
É notável que os interceptores do NG-ALAIN suportam a funcionalidade de refresh de token. Quando detectado um erro 401, o framework tenta automaticamente atualizar o token e reenviar a requisição, melhorando significativamente a experiência do usuário.
Gerenciamento Eficiente de Cache: A Regra Ouro para Melhorar o Desempenho da Aplicação
O NG-ALAIN oferece um poderoso serviço de cache CacheService, que ajuda os desenvolvedores a implementar facilmente o cache de dados, reduzindo requisições duplicadas e melhorando o desempenho da aplicação.
O uso do serviço de cache é bastante simples, bastando injetar o CacheService:
private readonly cache = inject(CacheService);
Em seguida, pode-se utilizar os métodos set e get para operações de cache:
// Definir cache
this.cache.set('usuario', dadosUsuario);
// Obter cache
const dadosUsuario = this.cache.getNone('usuario');
O arquivo src/app/routes/delon/cache/cache.component.ts demonstra a aplicação prática do serviço de cache. Ao armazenar em cache dados frequentemente utilizados, é possível reduzir significativamente o número de requisições à API e melhorar a velocidade de resposta da aplicação.
Mecanismo Completo de Tratamento de Erros: Habilidade Essencial para Construir Aplicações Robustas
O tratamento de erros é uma parte indispensável no desenvolvimento de aplicações de nível empresarial. O NG-ALAIN fornece um mecanismo abrangente de tratamento de erros, garantindo que a aplicação possa lidar com exceções de forma elegante.
No arquivo src/app/core/net/default.interceptor.ts, a função handleData é responsável por processar diversos códigos de status de erro HTTP:
- Erro 401: Tenta automaticamente atualizar o token ou redireciona para a página de login
- Erros 403, 404, 500: Podem ser configurados para redirecionar para páginas de erro correspondentes
- Outros erros: Fornecem informações detalhadas de erro, auxiliando desenvolvedores a identificar problemas
Além disso, nos arquivos src/app/core/startup/startup.service.ts e src/app/core/net/refresh-token.ts, o operador catchError do RxJS é utilizado para tratar erros em operações assíncronas, garantindo a estabilidade da aplicação.
Vantagens de Desenvolvimento Oferecidas pelos Recursos Avançados do NG-ALAIN
As três características principais do NG-ALAIN - interceptores, gerenciamento de cache e tratamento de erros - fornecem forte suporte para o desenvolvimento de aplicações de nível empresarial:
- Interceptores: Implementam processamento unificado de requisições/respostas, reduzindo código duplicado
- Cache: Melhora o desempenho da aplicação e a experiência do usuário
- Tratamento de Erros: Garante o funcionamento estável da aplicação e facilita a localização de problemas
Ao utilizar adequadamente essas características, os desenvolvedores podem se concentrar mais na implementação da lógica de negócios, construindo rapidamente sistemas administrativos de nível empresarial de alta qualidade.
Para começar a usar o NG-ALAIN, execute o seguinte comando para clonar o repositório:
git clone https://gitcode.com/gh_mirrors/ng/ng-alain
Experimente imediatamente a experiência de desenvolvimento eficiente oferecida pelo NG-ALAIN!