Pular para o conteúdo

Erro 429 no app: como avisar o usuário e tentar de novo sem travar

O app recebe 429 e mostra "erro desconhecido" — ou tenta de novo sem parar. Como tratar limites de requisição no React Native com feedback claro.

Por Equipe We Codex3 min de leitura

Quando a API responde 429 Too Many Requests, o app tem duas tarefas: esperar o tempo certo antes de tentar de novo e explicar o que está acontecendo ao usuário. A maioria dos apps falha em uma das duas.

Tentar de novo com inteligência

O que o usuário vê

  1. 1.Mensagem humana: "Muitas tentativas seguidas. Tente novamente em 30 segundos."
  2. 2.Botão desabilitado com contagem regressiva, que se reativa sozinho.
  3. 3.Nada perdido: o que foi digitado continua na tela (Formulários no celular: teclado certo, autofill e máscaras).
  4. 4.Sem alertas repetidos a cada falha.
tsx
const [espera, setEspera] = useState(0)
useEffect(() => {
  if (espera <= 0) return
  const t = setTimeout(() => setEspera((s) => s - 1), 1000)
  return () => clearTimeout(t)
}, [espera])

<Botao disabled={espera > 0} titulo={espera > 0 ? `Tente em ${espera}s` : 'Enviar'} />

Evite causar o 429

Conexão ruim é outra coisa

Diferencie limite de requisições, falta de internet e erro do servidor — cada um pede uma mensagem diferente (Estados vazios e de erro: as telas que ninguém desenha (e todo usuário vê)).

A We Codex desenvolve apps resilientes. Veja aplicativos nativos ou fale com a gente.

  • Erro 429
  • React Native
  • Resiliência
  • UX
CompartilharWhatsAppLinkedIn

Resolver de vez, com quem faz isso todo dia

Tem um app em mente ou um app que precisa ficar mais rápido?

Este artigo mostra o caminho. A implementação sob medida — o detalhe que muda o resultado no seu caso — é o trabalho da We Codex, empresa de engenharia do grupo Wocom.