Cada projeto suporta no máximo 50 funções de backend.
Criar funções
Crie funções de backend como arquivos TypeScript no diretório de funções do seu projeto. Por padrão o diretório de funções ébase44/functions/, mas você pode personalizar o caminho na configuração do seu projeto.
Cada função fica em seu próprio subdiretório com um arquivo entry.ts ou entry.js:
functions
<function-name>
entry.ts
functions/sendWelcomeEmail/entry.ts cria uma função chamada sendWelcomeEmail. Você também pode aninhar funções em subdiretórios para organização. functions/email/send/entry.ts cria uma função chamada email/send.
Adicionando um arquivo de configuração
Para necessidades avançadas como nomes customizados de função ou automations, adicione um arquivofunction.jsonc:
functions
<function-name>
entry.ts
function.jsonc
| Propriedade | Descrição |
|---|---|
name | Opcional. Identificador único da função. Usado ao invocar pelo SDK ou HTTP. O padrão é o caminho do diretório relativo à raiz de funções. |
entry | O arquivo contendo o código da função. |
automations | Opcional. Array de configurações de automation para executar a função em um cronograma ou em resposta a eventos do banco de dados. Veja Automations para detalhes. |
entry.ts
O arquivo de código contém a lógica da sua função. As funções devem usar o wrapperDeno.serve() e retornar objetos Response:
Teste localmente
Execute suas funções localmente combase44 dev para testar mudanças sem fazer deploy. Veja Desenvolvimento local para detalhes.
Implante funções
Implante funções comfunctions deploy ou deploy para enviar todos os recursos do projeto de uma vez. Você pode implantar funções específicas pelo nome com functions deploy <names...>, ou usar --force para remover funções remotas não encontradas localmente.
Para baixar funções implantadas para seu projeto local, use functions pull. Para ver o que está implantado atualmente, use functions list.
Chamar funções
Chame funções de backend do seu frontend usando o SDK, ou via HTTP para webhooks e integrações externas.Pelo SDK
Usebase44.functions.invoke() para chamar funções do seu frontend. O SDK cuida da autenticação automaticamente, passando as credenciais do usuário atual para sua função.
Via HTTP
Cada função implantada recebe um endpoint HTTP em:- Webhooks: Receba callbacks de serviços externos como Stripe ou GitHub.
- Integrações externas: Permita que outros sistemas interajam com seu app.
- Testes: Chame funções diretamente com ferramentas como cURL ou Postman.
Ao chamar funções via HTTP direto (como cURL ou webhooks), não há
contexto de usuário autenticado. Use
asServiceRole para todas as operações nesses
casos.Use o SDK em funções
Dentro das suas funções de backend, você pode acessar os dados, autenticação e integrações do seu app através do SDK da Base44. UsecreateClientFromRequest() para criar um cliente a partir da requisição recebida.
O contexto de autenticação depende de como a função foi chamada:
-
Quando chamada pelo SDK do seu frontend: A autenticação do usuário é passada automaticamente. Você pode acessar o usuário atual com
base44.auth.me()e realizar operações com suas permissões. Para operações de nível admin, useasServiceRole. -
Quando chamada via HTTP direto (cURL, webhooks, serviços externos): Não há usuário autenticado, então use
asServiceRolepara todas as operações.
Conectar a APIs de terceiros
As funções de backend são uma das várias formas de conectar a APIs de terceiros. Elas são ideais quando você precisa de controle total sobre as requisições ou quer armazenar API keys com segurança como variáveis de ambiente. Usesecrets set para configurar variáveis de ambiente pela CLI.
Veja logs
Durante o desenvolvimento local, a saída da função é impressa diretamente no seu terminal sem precisar do comandologs.
Para funções implantadas, veja logs com o comando logs. Os logs incluem saída do console, erros e informações de tempo. Você pode filtrar por nome da função ou intervalo de tempo. Se você está usando um agente de codificação de IA, a skill base44-troubleshooter pode buscar e analisar esses logs automaticamente.
Tipos TypeScript
Gere tipos TypeScript a partir das configurações das suas funções para obter segurança de tipo e autocomplete para nomes de função no seu código do SDK. Saiba mais sobre tipos dinâmicos.Veja também
- Automations: Agende funções ou dispare-as em eventos do banco de dados
- Módulo
functions: Referência do SDK para invocar funções createClientFromRequest: Criando um cliente em funções de backendfunctions deploy: Implante funções locais na Base44functions pull: Baixe funções implantadas para seu projeto localfunctions list: Liste todas as funções implantadasfunctions delete: Delete funções implantadaslogs: Veja logs de funçãoexec: Teste funções de forma isolada a partir de scripts autônomos
Esta página foi traduzida usando IA. Para informações mais precisas e atualizadas, consulte a versão em inglês.

