- Überblick
- JavaScript-Funktionen
- Python-Funktionen
- Bereitstellen und ausführen
Erste Schritte
Installieren Sie die CLI, erstellen Sie ein JavaScript- oder TypeScript-Funktionsprojekt und führen Sie Ihre erste Funktion lokal aus.
Auf dieser Seite werden Sie durch die Installation der CLI, das Erstellen eines Projekts und die lokale Ausführung Ihrer ersten JavaScript-Funktion geführt.
Voraussetzungen
- Node.js 20 oder höher.
- Die
uip-CLI mit dem Funktionstool:
npm install -g @uipath/cli
uip tools install @uipath/function-tool
npm install -g @uipath/cli
uip tools install @uipath/function-tool
- Ein UiPath-Konto mit Zugriff auf den Orchestrator zum Veröffentlichen und Aufrufen.
Gerüst für ein Projekt
uip function new my-functions -l ts
cd my-functions
uip function new my-functions -l ts
cd my-functions
TypeScript ist der Standardwert; Übergeben Sie -l js für JavaScript oder --empty, um die Beispielfunktion zu überspringen.
Das Gerüst erstellt:
| Datei | Zweck |
|---|---|
functions/hello.ts | Ihre Funktionslogik – eine Funktion pro Datei. Startet als ausführbares Beispiel. |
functions/_*.ts | Freigegebene Hilfe. Ein folgender Unterstrich markiert eine Datei als Hilfsfunktion, sodass sie keinen Einstiegspunkt und keinen Trigger erhält. |
uipath.json | Ordnet Funktionsnamen ihren Einstiegspunkten zu. |
package.json, tsconfig.json | Standardprojektdateien. |
Schreiben Sie Ihre erste Funktion
import { defineFunction, defineSchema } from "@uipath/coded-functions-js-sdk";
interface HelloInput {
name: string;
}
interface HelloOutput {
message: string;
}
export default defineFunction({
name: "hello",
method: "POST",
path: "/hello",
input: defineSchema<HelloInput>(),
output: defineSchema<HelloOutput>(),
handler: async (input) => ({ message: `Hello, ${input.name}!` }),
});
import { defineFunction, defineSchema } from "@uipath/coded-functions-js-sdk";
interface HelloInput {
name: string;
}
interface HelloOutput {
message: string;
}
export default defineFunction({
name: "hello",
method: "POST",
path: "/hello",
input: defineSchema<HelloInput>(),
output: defineSchema<HelloOutput>(),
handler: async (input) => ({ message: `Hello, ${input.name}!` }),
});
defineSchema<T>() leitet das JSON-Schema von Ihrer TypeScript-Schnittstelle ab, sodass derselbe Typ den Vertrag deklariert und den Handler eingibt. Übergeben Sie in JavaScript-Projekten stattdessen ein JSON-Schemaobjekt.
method und path machen diese Funktion über HTTP aufrufbar. Lassen Sie beides weg, und es wird nur als Auftrag ausgeführt – siehe Erstellen von JavaScript-Funktionen.
Führen Sie sie lokal aus
uip function serve
uip function serve
Dadurch wird ein Hot-Reload-Server auf http://localhost:7070 gestartet. Rufen Sie die Funktion auf:
curl -X POST http://localhost:7070/hello \
-H "Content-Type: application/json" \
-d '{"name":"Alice"}'
# {"message":"Hello, Alice!"}
curl -X POST http://localhost:7070/hello \
-H "Content-Type: application/json" \
-d '{"name":"Alice"}'
# {"message":"Hello, Alice!"}
Um den Orchestrator über eine lokale Ausführung zu erreichen, fügen Sie UIPATH_ACCESS_TOKEN, UIPATH_BASE_URL, UIPATH_ORG_ID und UIPATH_TENANT_ID in eine .env -Datei im Projektstamm ein. serve lädt sie in beiden unterstützten Runtimes.
Nächste Schritte
- Erstellen von JavaScript-Funktionen – Verträge, Fehler und die beiden Funktionsstrukturen.
- HTTP-Trigger und Routing – Routen, Pfadparameter und das Aufrufen einer bereitgestellten Funktion.
- Verpackung und Veröffentlichung – Bereitstellung im Orchestrator.
- CLI-Referenz – jeder Befehl und Flag.