HTTP-Request
Diese Node befindet sich in der Beta-Phase und kann sich ändern.
Die HTTP-Node sendet HTTP-Requests an externe APIs und Webdienste und speichert die Antwort in einer Variablen zur weiteren Verarbeitung in Ihrem Flow.
Basiskonfiguration
- HTTP-Methode: Wählen Sie die request Methode (GET, POST, PUT, PATCH, DELETE) entsprechend den API-Anforderungen aus.
- URL: Geben Sie die vollständige API-Endpunkt-URL ein, einschließlich der Query-Parameter, falls erforderlich (z. B.
https://api.example.com/v1/items?limit=10))- Die URL muss für die Control Unit, auf dem RobFlow läuft, erreichbar sein.
- Antwortvariable: Wählen Sie eine String-Variable aus, in der der HTTP-Antworttext gespeichert werden soll.
- Antwortverarbeitung: Optional können Sie bestimmte Daten aus JSON-Antworten mithilfe der Klammernotation extrahieren.
Authentifizierung
Die HTTP-Node unterstützt mehrere Authentifizierungsmethoden für einen sicheren API-Zugriff:
- Keine: Keine Authentifizierung (für öffentliche APIs).
- Basic Auth: Geben Sie den Benutzernamen und das Passwort für die HTTP Basic Authentication an.
- Bearer Token: Geben Sie einen API-Token oder JWT für die Bearer-Token-Authentifizierung ein.
Request Body (POST/PUT/PATCH)
Bei POST-, PUT- und PATCH-Requests können Sie den Content-Type und den Inhalt des Requests angeben:
- Content-Type: Wählen Sie das Format Ihres Requests aus (JSON, XML, Klartext oder Formulardaten).
- Inhalt: Geben Sie den Request Body ein, in der Regel im JSON-Format (z. B. {"name": "Item1", "quantity": 5}).
Antwortverarbeitung
Sie können die HTTP-Antwort optional in einer Variable speichern. Auf diese Weise können Sie die Daten in Ihrem Flow weiterverarbeiten. Außerdem können Sie den Umfang der in der Variablen gespeicherten Daten einschränken, indem Sie einen bestimmten Teil der JSON-Antwort mithilfe der Klammernotation angeben.
Beispiel: apiResponse["items"][0]["name"]
apiResponse: Die Variable, in der die HTTP-Antwort gespeichert werden soll (sollte mit der zuvor ausgewählten Antwortvariablen übereinstimmen)- ["items"]: Erster Key im JSON-Antwortobjekt
- [0]: Erster Eintrag im „items“ Array
- ["name"]: Das Namensfeld im Array-Objekt
Erweiterte Einstellungen
- Accept Typ: Geben Sie das erwartete Antwortformat an (JSON, XML, HTML, Klartext oder beliebig).
- Zeitüberschreitung: Legen Sie die maximale Wartezeit (0,1–30 Sekunden) fest, bis eine Antwort ausbleibt und der Request fehlschlägt.
- Wiederholungen: Konfigurieren Sie automatische Wiederholungsversuche (0-10) mit exponentiellem Backoff für fehlgeschlagene Requests.
Beispiel für die Benutzung
Daten aus einer API abrufen
- Methode: GET
- URL: https://api.example.com/items
- Antwortvariable: apiResponse
- Antwortverarbeitung:
apiResponse["items"][0]["name"](Speichert den Namen des ersten Elements aus der Antwort in der ausgewählten Variable)
Daten an eine API senden
- Methode: POST
- URL: https://api.example.com/items
- Authentifizierung: Bearer-Token
- Content-Type: application/json
- Inhalt: {"name": "NewItem", "quantity": 10}
- Antwortvariable (optional): createResponse
Tipps
- Testen Sie Ihren API-Endpunkt in einem Tool wie Postman, bevor Sie die HTTP-Node konfigurieren.
- Verwenden Sie die Antwortverarbeitung, um nur die benötigten Daten zu extrahieren und so die Variablengröße zu reduzieren.
- Konfigurieren Sie Wiederholungsversuche mit geeigneten Zeitüberschreitungswerten, um vorübergehende Probleme in der API zu beheben.
- Der HTTP Antwort-Statuscode (z. B. 200, 404) wird während der Ausführung oberhalb der Node angezeigt.
- Wenn die Authentifizierung fehlschlägt oder die API nicht erreichbar ist, unterbricht die Node den Flow und zeigt eine Fehlermeldung an.
ERP-Integration
SAP
Die HTTP-Node kann verwendet werden, um Anfragen an SAP (S/4HANA)-Systeme zu senden, die eine HTTP-API bereitstellen.
Anforderungen:
- Der Kunde muss SAP Gateway (oder ein ähnliches Produkt) konfiguriert haben, um eine OData(HTTP)-API für sein SAP-System verfügbar zu machen.
- Dieser API-Endpunkt muss für die Control Unit, auf dem RobFlow läuft, erreichbar sein.