Architecture & CoreDecisions
0007 dual path routing cloudflare
ADR 0007: Dual-Path Routing for Cloudflare Compatibility
Contexto
Em produção, o Cloudflare Pages/Workers configurado com rotas de API em /api/* tende a remover o prefixo /api antes de encaminhar a requisição para o Worker. Isso causava erros 404 constantes, pois o roteamento interno do Hono esperava explicitamente /api/v1/....
Decisão
Implementar um helper mountRoute no index.ts do backend que registra automaticamente cada rota em dois caminhos:
- O caminho original (ex:
/api/v1). - O caminho sem o prefixo
/api(ex:/v1).
Consequências
- Flexibilidade: O sistema torna-se agnóstico à configuração de roteamento do proxy (Cloudflare).
- Consistência: Mantém a compatibilidade com ambientes de desenvolvimento que ainda usam o prefixo
/apicompleto. - Redundância Menor: As rotas são montadas programaticamente, evitando duplicação manual de código em cada arquivo de rota.