Pular para o conteúdo principal
O desenvolvimento local permite executar seu projeto de backend na sua própria máquina para que você possa testar mudanças instantaneamente, inspecionar dados sem afetar produção e detectar problemas antes de implantar. Veja Configuração para pré-requisitos e instruções passo a passo.

O que roda localmente

O dev server cuida desses recursos inteiramente na sua máquina:
  • Funções: As funções de backend rodam localmente com recarregamento automático ao mudar arquivos.
  • Entidades: Os dados de entidades são armazenados em um banco de dados local em memória. Mudanças de schema são detectadas automaticamente.
  • Mídia: Uploads de arquivos são salvos localmente.
  • Autenticação: Registro e login por e-mail/senha rodam localmente.
Automations de funções não rodam localmente.

O que é encaminhado

Alguns recursos ainda não são tratados localmente. Quando o dev server recebe uma requisição que não consegue atender, ele a encaminha para seu app implantado para que a chamada ainda funcione. O servidor registra um aviso a cada vez que isso acontece. Recursos encaminhados incluem:
  • Autenticação: As rotas de OAuth e login social são redirecionadas para a Base44 para que cookies de sessão funcionem corretamente. Auth por e-mail/senha roda localmente.
  • Integrações principais: Endpoints como SendEmail ou geração de IA são encaminhados. Uploads de arquivos são a exceção e rodam localmente.
  • Integrações customizadas: Chamadas de API configuradas através de especificações OpenAPI.
Isso significa que seu app continua funcionando de ponta a ponta durante o desenvolvimento. Recursos que rodam localmente usam dados locais, e todo o resto usa produção.

Funções

As funções de backend rodam localmente na sua máquina. Você pode chamá-las do seu frontend exatamente como funções implantadas.
  • Cada função roda como um processo Deno separado, que deve ser instalado separadamente.
  • As funções recarregam automaticamente quando você edita o código-fonte.
  • A saída da função é impressa diretamente no seu terminal. Você não precisa usar base44 logs durante o desenvolvimento local.
Quando uma requisição chega ao dev server e é proxiada para sua função Deno local, o servidor pode adicionar ou normalizar headers para que sua função veja o mesmo formato de contexto que em produção:
  • Base44-App-Id: Definido a partir do header X-App-Id de entrada, quando presente.
  • Base44-Service-Authorization: Definido a partir do header Authorization de entrada, quando presente, para que o código que lê o header de autorização do serviço localmente corresponda ao comportamento implantado.
  • Base44-Api-Url: Definido para a URL base do seu dev server (esquema e host), para que as funções possam construir callbacks ou URLs absolutas contra o servidor local.
O header Authorization original ainda é encaminhado sem alterações.
A primeira requisição a uma função pode ser mais lenta porque o dev server inicia o processo sob demanda. Requisições subsequentes reutilizam o processo em execução.

Entidades

As operações de entidade vão para um banco de dados local em memória em vez do banco de dados remoto. Isso permite criar, ler, atualizar e excluir registros sem afetar seus dados de produção.
  • Todos os dados são armazenados em memória e são limpos quando você para o dev server.
  • Mudanças de schema são detectadas automaticamente. Alterar um schema de entidade limpa todos os dados em memória dessa entidade.
  • Assinaturas em tempo real funcionam localmente. Se seu frontend usa entities.subscribe(), ele recebe eventos para mudanças locais de entidade.
  • A entidade User roda localmente. Na inicialização, o dev server cria um único registro de usuário usando suas credenciais autenticadas da CLI. Operações de leitura e atualização em me funcionam como em produção. Requisições para criar ou excluir usuários são silenciosamente ignoradas, correspondendo ao comportamento de produção, onde o gerenciamento direto de usuários não é permitido.

Mídia

Os uploads de arquivos são tratados localmente para que você possa testar recursos de mídia sem fazer upload para o armazenamento de produção. Os arquivos são salvos em um diretório temporário e limpos quando o dev server para. O tamanho máximo de arquivo é de 50 MB.

Autenticação

Registro e login por e-mail/senha rodam localmente quando seu app usa o sistema de auth integrado. As rotas de OAuth e login social são redirecionadas para a Base44. Para registrar um novo usuário durante o desenvolvimento usando auth de e-mail/senha:
  1. Chame o endpoint de registro. O dev server imprime um código de verificação único no seu terminal em vez de enviar um e-mail.
  2. Envie o código para o endpoint de verify-OTP para confirmar o endereço e criar o usuário.
  3. Faça login com o e-mail e a senha registrados.
Sua conta de desenvolvedor (o e-mail que você usou em base44 login) pode fazer login com qualquer senha, sem necessidade de registro.
Tokens emitidos pelo dev server local são válidos apenas localmente. Eles são assinados com um secret diferente do de produção, então seu app implantado os rejeitará. Quando você alternar do desenvolvimento local para seu app implantado, primeiro saia da sua sessão local ou exclua seus tokens do armazenamento local do navegador. Em seguida, faça login novamente pelo app implantado para obter um token válido.

Veja também

Esta página foi traduzida usando IA. Para informações mais precisas e atualizadas, consulte a versão em inglês.