Skip to main content
Cette page fait partie d’une compétence d’agent de code IA et est écrite pour les agents, pas pour les humains. Pour la documentation Base44 lisible par un humain, consultez la documentation développeur.

Créer des fonctions

Les fonctions Base44 sont des fonctions backend serverless qui s’exécutent sur Deno. Elles sont définies localement dans votre projet et déployées vers le backend Base44.

Répertoire des fonctions

Toutes les définitions de fonctions doivent être placées dans le dossier base44/functions/ de votre projet. La fonction la plus simple est un dossier avec un fichier entry.ts ou entry.js à l’intérieur. Structure d’exemple :

Comment créer une fonction

  1. Créez un nouveau répertoire dans base44/functions/ avec le nom de votre fonction (utilisez kebab-case)
  2. Créez entry.ts (ou entry.js) dans ce répertoire
  3. Déployez la fonction avec le CLI

Découverte des fonctions

Le CLI découvre les fonctions à partir des fichiers entry.ts ou entry.js. Un dossier contenant l’un de ces fichiers est une fonction :
Le nom de la fonction est le chemin depuis la racine des fonctions jusqu’à ce dossier. Par exemple : Règles :
  • entry.ts ou entry.js doit se trouver dans un sous-dossier nommé, pas directement dans base44/functions/
  • tous les fichiers *.js, *.ts et *.json sous le dossier de la fonction sont inclus lors du déploiement
  • les chemins de fonctions comportant un point dans un segment sont ignorés

Fichier d’entrée

Les fonctions s’exécutent sur Deno et doivent exporter via Deno.serve(). Utilisez le préfixe npm: pour les paquets npm.

Objet Request

La fonction reçoit un objet Deno Request standard :
  • req.json() - Parser le corps JSON
  • req.text() - Obtenir le corps texte brut
  • req.headers - Accéder aux en-têtes de la requête
  • req.method - Méthode HTTP

Objet Response

Retournez avec Response.json() pour des réponses JSON :

Exemple complet

Structure du répertoire

entry.ts

Utiliser l’accès service role

Pour les opérations administrateur, utilisez asServiceRole :

Utiliser des secrets

Accédez aux variables d’environnement configurées dans le tableau de bord de l’application :

Conventions de nommage

  • Nom du répertoire : utilisez le kebab-case (par exemple, process-order, send-notification)
  • Nom de la fonction : provient du chemin du répertoire sous base44/functions/
    • Valides : process-order, orders/process, send_notification, myFunction
    • Invalides : process.order, send.notification.v2
  • Fichier d’entrée : utilisez entry.ts ou entry.js

Déployer les fonctions

Après la création de votre fonction, déployez-la vers Base44 :
Pour plus de détails sur le déploiement, consultez functions-deploy.md.

Remarques

  • Les fonctions s’exécutent sur le runtime Deno, pas Node.js
  • Utilisez le préfixe npm: pour les paquets npm (par exemple, npm:@base44/sdk)
  • Utilisez createClientFromRequest(req) pour obtenir un client qui hérite du contexte d’authentification de l’appelant
  • Configurez les secrets via le tableau de bord de l’application pour les clés API
  • Gérez les erreurs proprement et retournez les codes de statut HTTP appropriés

Erreurs courantes

Cette page a été traduite à l’aide de l’IA. Pour les informations les plus précises et à jour, consultez la version anglaise.