Jedes Projekt unterstützt maximal 50 Backend-Funktionen.
Funktionen erstellen
Erstelle Backend-Funktionen als TypeScript-Dateien im Funktionsverzeichnis deines Projekts. Standardmäßig ist das Funktionsverzeichnisbase44/functions/, aber du kannst den Pfad in deiner Projektkonfiguration anpassen.
Jede Funktion lebt in ihrem eigenen Unterverzeichnis mit einer entry.ts- oder entry.js-Datei:
functions
<function-name>
entry.ts
functions/sendWelcomeEmail/entry.ts eine Funktion namens sendWelcomeEmail. Du kannst Funktionen auch zur Organisation in Unterverzeichnissen verschachteln. functions/email/send/entry.ts erstellt eine Funktion namens email/send.
Eine Konfigurationsdatei hinzufügen
Für erweiterte Anforderungen wie eigene Funktionsnamen oder Automationen füge einefunction.jsonc-Datei hinzu:
functions
<function-name>
entry.ts
function.jsonc
| Eigenschaft | Beschreibung |
|---|---|
name | Optional. Eindeutige Kennung für die Funktion. Wird beim Aufruf über SDK oder HTTP verwendet. Standardwert ist der Verzeichnispfad relativ zum Funktions-Stammverzeichnis. |
entry | Die Datei mit dem Funktionscode. |
automations | Optional. Array von Automationskonfigurationen, um die Funktion nach einem Zeitplan oder als Reaktion auf Datenbankereignisse auszuführen. Siehe Automationen für Details. |
entry.ts
Die Code-Datei enthält deine Funktionslogik. Funktionen müssen denDeno.serve()-Wrapper verwenden und Response-Objekte zurückgeben:
Lokal testen
Führe deine Funktionen mitbase44 dev lokal aus, um Änderungen ohne Deployment zu testen. Details unter Lokale Entwicklung.
Funktionen deployen
Deploye Funktionen mitfunctions deploy oder deploy, um alle Projektressourcen auf einmal zu pushen. Du kannst bestimmte Funktionen nach Namen mit functions deploy <names...> deployen oder --force verwenden, um Remote-Funktionen zu entfernen, die lokal nicht vorhanden sind.
Um deployed Funktionen in dein lokales Projekt herunterzuladen, verwende functions pull. Um zu sehen, was aktuell deployed ist, verwende functions list.
Funktionen aufrufen
Rufe Backend-Funktionen aus deinem Frontend über das SDK auf oder über HTTP für Webhooks und externe Integrationen.Über das SDK
Verwendebase44.functions.invoke(), um Funktionen aus deinem Frontend aufzurufen. Das SDK übernimmt die Authentifizierung automatisch und übergibt die Anmeldedaten des aktuellen Benutzers an deine Funktion.
Über HTTP
Jede deployed Funktion erhält einen HTTP-Endpunkt unter:- Webhooks: Empfang von Callbacks von externen Diensten wie Stripe oder GitHub.
- Externe Integrationen: Anderen Systemen die Interaktion mit deiner App ermöglichen.
- Testen: Funktionen direkt mit Tools wie cURL oder Postman aufrufen.
Beim Aufruf von Funktionen über direktes HTTP (wie cURL oder Webhooks) gibt es
keinen authentifizierten Benutzerkontext. Verwende in diesen Fällen
asServiceRole für alle Operationen.Das SDK in Funktionen verwenden
In deinen Backend-Funktionen kannst du über das Base44-SDK auf die Daten, die Authentifizierung und die Integrationen deiner App zugreifen. VerwendecreateClientFromRequest(), um einen Client aus dem eingehenden Request zu erstellen.
Der Authentifizierungskontext hängt davon ab, wie die Funktion aufgerufen wurde:
-
Beim Aufruf über das SDK aus deinem Frontend: Die Authentifizierung des Benutzers wird automatisch durchgereicht. Du kannst auf den aktuellen Benutzer mit
base44.auth.me()zugreifen und Operationen mit seinen Berechtigungen durchführen. Für Operationen auf Admin-Ebene verwendeasServiceRole. -
Beim Aufruf über direktes HTTP (cURL, Webhooks, externe Dienste): Es gibt keinen authentifizierten Benutzer, also verwende
asServiceRolefür alle Operationen.
Mit Drittanbieter-APIs verbinden
Backend-Funktionen sind eine von mehreren Möglichkeiten, sich mit Drittanbieter-APIs zu verbinden. Sie sind ideal, wenn du volle Kontrolle über Requests benötigst oder API-Schlüssel sicher als Umgebungsvariablen speichern möchtest. Verwendesecrets set, um Umgebungsvariablen über die CLI zu konfigurieren.
Logs ansehen
Während der lokalen Entwicklung wird die Funktionsausgabe direkt in deinem Terminal ausgegeben, ohne denlogs-Befehl zu benötigen.
Für deployed Funktionen sieh dir die Logs mit dem logs-Befehl an. Die Logs enthalten Konsolenausgaben, Fehler und Zeitinformationen. Du kannst nach Funktionsname oder Zeitraum filtern. Wenn du einen KI-Coding-Agenten verwendest, kann die Skill base44-troubleshooter diese Logs automatisch abrufen und analysieren.
TypeScript-Typen
Generiere TypeScript-Typen aus deinen Funktionskonfigurationen, um Typsicherheit und Autovervollständigung für Funktionsnamen in deinem SDK-Code zu erhalten. Erfahre mehr über dynamische Typen.Siehe auch
- Automationen: Funktionen planen oder bei Datenbankereignissen auslösen
functions-Modul: SDK-Referenz zum Aufrufen von FunktionencreateClientFromRequest: Einen Client in Backend-Funktionen erstellenfunctions deploy: Lokale Funktionen zu Base44 deployenfunctions pull: Deployed Funktionen in dein lokales Projekt herunterladenfunctions list: Alle deployed Funktionen auflistenfunctions delete: Deployed Funktionen löschenlogs: Funktionslogs ansehenexec: Funktionen isoliert aus eigenständigen Skripten testen
Diese Seite wurde mit KI übersetzt. Für die genauesten und aktuellsten Informationen siehe die englische Version.

