Problem/Fehler/Frage beschreiben
Ich möchte einige Daten als Antwort auf einen API-Aufruf zurücksendet. Aber die Daten werden gesendet als
[
{
"status " : "success",
"data" : [
{
"name":"......",
"rollno.":"....."
},
{
"name":"......",
"rollno.":"....."
}
]
}
]
// Ich möchte die äußersten Klammern [] entfernen und die Daten direkt in {} senden.
Wie lautet die Fehlermeldung (falls vorhanden)?
Bitte teilen Sie Ihren Workflow
(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)
Ausgabe des letzten Knotens teilen
Informationen zu Ihrem n8n-Setup
- n8n-Version:
- Datenbank (Standard: SQLite):
- n8n EXECUTIONS_PROCESS-Einstellung (Standard: own, main):
- n8n wird ausgeführt über (Docker, npm, n8n cloud, desktop app):
- Betriebssystem:
Konnte den 3. Schritt nicht herausfinden. Aber mit {{$json}} ist es immer noch das gleiche (es sei denn, ich muss etwas wie im 3. Schritt ändern.)
Hi @Aarush_Bisht
Dafür kannst du einfach einen Set Field-Knoten vor deinem Respond to Webhook-Knoten hinzufügen, und dort im Set Field-Knoten kannst du deine gesamte JSON-Struktur verdeutlichen, indem du seinen Modus auf JSON umschaltest. Sobald das erledigt ist, kannst du im Respond to Webhook-Knoten “Respond With” auf “First Incoming Item” setzen, damit alles, was aus dem Set Fields-Knoten kommt, automatisch gesendet wird.
Wie folgt:
Es gibt noch einen anderen Weg, den ich für große Datenmengen nicht empfehle, aber er funktioniert auch: indem du das JSON direkt im Response-Body des Respond to Webhook-Knotens analysierst und dort deine gesamte JSON definierst, aber nur wenn sie kurz ist.
Etwa so:
={{ { "status": $json.status, "data": $json.data } }}
das habe ich gemacht, aber diese eckige Klammer taucht immer noch auf? warum interpretiert n8n das von Natur aus als Array?
@Aarush_Bisht Hast du die Ausgabe von Respond to Webhook gesehen? Da diese eckigen Klammern dort nicht angezeigt werden, habe ich das persönlich getestet.
Das ist das, was vorne ankommt:
Ich denke also, dass die eckigen Klammern nicht angezeigt werden. Sie werden nur in der Benutzeroberfläche angezeigt, nicht in den eigentlichen Anfragen.
Ah ja! Wenn ich es über die ‘respond to webhook’-Ausgabe nach der Verwendung von set fields überprüfe, wird es wie erwartet angezeigt.