Executando verificação de segurança...
1

Como lidar com problemas de conexão entre Front x Back?

Eu estava imaginando o seguinte cenário esses dias: um sistema de estacionamento, onde novos carros são cadastrados e quando saem é preciso dar baixa no sistema
Como lidar com o cenário que eu estou cadastrando um carro no sistema, porém estou sem internet para enviar pro meu BackEnd? Salvo em localStorage e faço uma função que sincronize depois com o meu banco? Exibo uma mensagem de erro? Como vocês tratariam esse problema?

Carregando publicação patrocinada...
1

É uma boa pergunta, mas ai temos de ver algumas coisas.

  • O seu sistema é desktop com o back e o front rodando em servidores separados ligados pela rede?
  • Está na nuvem em servidores diferentes?
  • O front está no desktop e o back na nuvem?
  • O front está no mobile instalado e o back está na nuvem?

Mas de qualquer cenário, creio que o ideal é fazer o que você falou, que é salvar localmente e quando tiver internet enviar. O Whatsapp faz isto por exemplo.

1
1

No caso de um sistema web não vejo um motivo plausível para realizar um tratamento nesse sentido. Ele precisa de internet para utilizar o sistema, em uma possível queda ele perderá o acesso ao sistema todo. Esse tipo de tratamento só faz sentido em sistemas desktop e mobile que trabalham com bancos locais sincronizando informação com o servidor quando necessário.

No caso do navegador, qualquer usuário ao perder a conexão vai fechar o mesmo. Único cenário seria uma queda de conexão no meio do processo de cadastro. Mas se na sua visão for realmente necessário, você pode salvar isso no localStorage com uma tag de sincronização, e criar uma rotina que faz essa verificação para mandar para API, ou avisar o usuário do cadastro pendente e abrir novamente para ele tentar fazer o envio.