Transformieren Ihrer Daten
Talend Cloud API Tester ermöglicht Ihnen die Manipulation von Daten über Funktionen.
Mithilfe von Funktionen können neue Daten erstellt oder bestehende Daten transformiert werden. Funktionen zur Datentransformation werden auf den Wert des Ausdrucks angewendet, den sie fertig stellen.
Verwendungsbeispiele
Wenn die ersten 10 Planetennamen in der Liste der Planeten über die Star Wars-API abgerufen werden sollen, können Sie folgenden Ausdruck verwenden: ${"Star-wars API"."Get 10 planet names"."response"."body".jsonPath("$.results[:10].name")}. Die Methode jsonPath analysiert das Ergebnis des Ausdrucks ${"Star-wars API"."Get 10 planet names"."response"."body"}.
Wenn Sie Logs der vergangenen Woche abrufen möchten, können Sie eine URL mit Ausdrücken in den Abfrageparametern erstellen: https://myapi.com/logs?from=${timestamp().addTime("WEEK", "-1")}&to=${timestamp()}.
Wenn das aktuelle Datum im ISO-Format generiert werden soll, können Sie den Ausdruck ${timestamp().formatDate('TIMESTAMP', 'ISO_8601')} verwenden.
Konstanten
Beim Schreiben eines Ausdrucks, wie z. B. ${"toto"}, wird dieser ausgewertet als:
- der Wert der aktuellen Umgebungsvariablen toto, sofern vorhanden.
- der Request / das Szenario / der Dienst / das Projekt toto auf Stammebene in Ihrem Repository, wenn keine Umgebungsvariable übereinstimmt.
- die Zeichenfolge toto in allen anderen Fällen.
Datenerstellungsfunktionen
Funktion | Beschreibung | Argumente | Beispiel |
---|---|---|---|
timestamp | Gibt die Anzahl an Millisekunden ab dem 1. Januar 1970, 00:00:00 GMT bis zum Datum der Auswertung an. | Keine | Ausdruck: ${timestamp()} Mögliches Ergebnis: 1505136142950 |
uuid | Gibt eine UUID zurück. | Keine | Ausdruck: ${uuid()} Mögliches Ergebnis: f5fafd92-2298-4e72-97c9-df4dabaf27d2 |
random | Gibt eine willkürliche Zahl aus dem Bereich 0 <= number < max zurück. | Maximum: Standardwert ist 1000000000. | Ausdruck: ${random(50)} Mögliches Ergebnis: 42 |
randomString | Gibt eine willkürliche Zeichenfolge mit spezifischer Länge zurück. InformationshinweisAnmerkung: Diese Funktion ist für die Passwortgenerierung nicht zuverlässig und sollte nicht zu diesem Zweck herangezogen werden.
|
Length (Länge): Anzahl der Zeichen in der Zeichenfolge. Standardwert ist 10. [a-z]: Aktivieren Sie dieses Kontrollkästchen, um Kleinbuchstaben in die Zeichenfolge aufzunehmen. [A-Z]: Aktivieren Sie dieses Kontrollkästchen, um Großbuchstaben aufzunehmen. [0-9]: Aktivieren Sie dieses Kontrollkästchen, um Zahlen aufzunehmen. |
Ausdruck: ${randomString(10, true, true, true)} Mögliches Ergebnis: 4ptUKhHYMr |
Datenumwandlungsfunktionen
Funktion | Beschreibung | Argumente | Beispiel |
---|---|---|---|
base64 | Nimmt eine Kodierung in base64 vor. | Keine | Ausdruck: ${"username:password".base64()} Ergebnis: dXNlcm5hbWU6cGFzc3dvcmQ= |
lower | Wandelt alle Zeichen in Übereinstimmung mit den Regeln der Standard-Ländereinstellungen in Kleinbuchstaben um. | Keine | Ausdruck: ${"AbC".lower()} Ergebnis: abc |
length | Verarbeitet die Länge der Eingabe:
|
Keine | Ausdruck: ${"Star-wars API"."Get 2 planets"."response"."body"} Ergebnis:
Ausdruck: ${"Star-wars API"."Get 2 planets"."response"."body".length()} Ergebnis: 2 Ausdruck: ${"Star-wars API"."Get 2 planets"."response"."body"."results".length()} Ergebnis: 3 Ausdruck: ${"Star-wars API"."Get 2 planets"."response"."body"."results"."0"."name".length()} Ergebnis: 8 |
substring | Gibt eine trunkierte Eingabe zurück. | Start: Position des ersten Zeichens, das extrahiert werden soll (Standard ist 0). End (Ende): Position des ersten Zeichens, das übersprungen werden soll (standardmäßig das Ende der Eingabe). InformationshinweisAnmerkung: Der Index des ersten Zeichens ist 0.
|
Ausdruck: ${"0123456".substring(1)} Ergebnis: 123456 Ausdruck: ${"0123456".substring(1, 2)} Ergebnis: 1 Ausdruck: ${"0123456".substring(0, 4)} Ergebnis: 0123 |
jsonPath | Gibt die aus der JSON-Eingabe über den angegebenen JSON-Pfad-selector extrahierten Elemente zurück. | „Selector“: Der JSON-Pfad-Selektor, der auf den aus der Eingabe zu extrahierenden JSON-Teil verweist. | Ausdruck: ${"{\"titi\": \"toto\"}".jsonPath("$.titi")} Ergebnis: toto |
xPath | Gibt die aus der XML-Eingabe über den angegebenen XPath-Selector extrahierten Elemente zurück. | „Selector“: Der XPath-Selektor, der auf den aus der Eingabe zu extrahierenden XML-Teil verweist. | Ausdruck: ${"<title lang="en" />".xPath("//title/@lang")} Ergebnis: [lang="en"] |
hmac | Erstellt einen Hash-basierten Message Authentication Code. | Cipher: Die Hash-Funktion (SHA1, SHA224, SHA256, SHA384 oder SHA512). Secret : Der Secret Key. Output (Ausgabe): Der Ausgabetyp (Base64 oder Hex). |
Ausdruck: ${"test".hmac("sha256", "secret", "Base64")} Ergebnis: Aymga2LNFrM+tnkr6MYLFY2Jou46h2/Omogeu0iMCRQ= Ausdruck: ${"test".hmac("sha1", "secret", "Hex")} Ergebnis: 1aa349585ed7ecbd3b9c486a30067e395ca4b356 |
sha | Hashes die Eingabe. | Cipher: Die Hash-Funktion (SHA1, SHA224, SHA256, SHA384 oder SHA512). Output (Ausgabe): Der Ausgabetyp (Base64 oder Hex). |
Ausdruck: ${"toto".sha("SHA224", "Base64")} Ergebnis: IcBD7s1+hUI6ctrjwGKitb+g5rNc4/54jJtXpg== Ausdruck: ${"toto".sha("SHA1", "Hex")} Ergebnis: 0b9c2625dc21ef05f6ad4ddf47c5f203837aa32c |
md5 | Berechnet den MD5-Hash der Eingabe. | Keine | Ausdruck: ${"toto".md5()} Ergebnis: f71dbe52628a3f83a77ab494817525c6 |
upper | Wandelt alle Zeichen in Übereinstimmung mit den Regeln der Standard-Ländereinstellungen in Großbuchstaben um. | Keine | Ausdruck: ${"aBc".upper()} Ergebnis: ABC |
string | Setzt die Eingabe in Anführungszeichen. | Quotes (Anführungszeichen): Das Anführungszeichen, das zum Umschließen der Eingabe verwendet werden soll (' oder ", standardmäßig wird " verwendet). | Ausdruck: ${"toto".string()} Ergebnis: "toto" Ausdruck: ${"toto".string("\"")} Ergebnis: "toto" Ausdruck: ${"toto".string("'")} Ergebnis: 'toto' |
Mathematik | Führt die ausgewählte Operation mit dem Eingabewert durch. | Operation: ADD (Addieren), SUBTRACT (Subtrahieren), MULTIPLY (Multiplizieren) oder DIVIDE (Dividieren) Value (Wert): Zahl |
Ausdruck: ${"7".math("MULTIPLY", "6")} Ergebnis: 42 Ausdruck: ${"3.14".math("ADD", "0.00159265")} Ergebnis: 3.14159265 Ausdruck: ${"100".math("DIVIDE", "-5")} Ergebnis: -20 |
addTime | Fügt eine bestimmte Anzahl der ausgewählten Zeiteinheit zu einem Datum hinzu bzw. entfernt sie. | Time unit (Zeiteinheit): YEAR (Jahr), MONTH (Monat), WEEK (Woche), DAY (Tag), HOUR (Stunde), MINUTE (Minute) oder SECOND (Sekunde) Value (Wert): Ganzzahl (Sie können eine negative Zahl verwenden, um eine Zeiteinheit zu entfernen) |
Ausdruck: ${timestamp().addTime("YEAR", "1")} Mögliches Ergebnis: 1620292896490 Ausdruck: ${timestamp().addTime("WEEK", "-2")} Mögliches Ergebnis: 1587547696437 |
formatDate | Wandelt ein Datum in das ausgewählte Format um. | Input format (Eingabeformat): TIMESTAMP (Zeitstempel) oder ISO_8601 Output format (Ausgabeformat): TIMESTAMP (Zeitstempel) oder ISO_8601 |
Ausdruck: ${timestamp().formatDate("TIMESTAMP", "ISO_8601")} Mögliches Ergebnis: 2020-05-06T13:43:22.248Z Ausdruck: ${"2020-04-06T13:44:51.435Z".formatDate("ISO_8601", "TIMESTAMP")} Ergebnis: 1586180691435 |