Beispiele für JSON-Dateiimport
Diese Beispiele zeigen, wie verschiedene Arten von JSON-Daten und der erforderliche Pfad für jede Zeile importiert werden. JSON-Dateien, die Sie importieren, sollten diesen Richtlinien entsprechen.
Eine Schritt-für-Schritt-Anleitung zum Erstellen einer Dateityp-Datenquelle finden Sie unter Erstellen Sie eine Datenquelle vom Typ Datei.
- Für JSON -Arrays muss der Pfad für jede Zeile das Array-Stammelement zweimal angeben, z. B.
/incidents/incidents. - JSON Dateien müssen RFC-4627 entsprechen. Zum Beispiel sollte ein einzelnes Komma einen Wert vom folgenden Namen trennen. Namen innerhalb eines Objekts müssen eindeutig sein.
- Prädikate wie
@element,[index]odertext()sowie Achsen wie untergeordnete Elemente, gleichgeordnete Elemente oder Vorfahren werden nicht unterstützt.
Einfaches Array
- Pfad für jede Zeile:
/incidents/incidents - Ergebnis: 2 Datensätze
/incidents zweimal. Dies ist beim Importieren eines Arrays erforderlich.{
"source":"HI",
"incidents":[
{
"number":"INC0000001",
"short_description":"Can't read email"
},
{
"number":"INC0000002",
"short_description":"Error loading XML file"
}
]
}
Array in 2. Ebene
- Pfad für jede Zeile:
/probleme/data/data - Ergebnis: 3 Datensätze
/data zweimal.{
"problems":{
"id":"0",
"data":[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
},
{
"number":"PRBTEST003",
"short_description":"testsd3"
}
]
}
}
Geschachteltes Array
- Pfad für jede Zeile:
/problems/problems/data/data - Ergebnis: 3 Datensätze
/problems und /data.{
"problems": [
{
"id":0,
"data":[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
},
{
"number":"PRBTEST003",
"short_description":"testsd3"
}
]
}
]
}
Unterstützende untergeordnete (geschachtelte) Arrays
Standardmäßig unterstützt der Import keine untergeordneten (verschachtelten) Arrays. Sie können den Support aktivieren, indem Sie das Kontrollkästchen Arrays verwerfen in der Datenquellenansicht deaktivieren. In der folgenden Tabelle werden verschiedene Verhaltensweisen beim Aktivieren und Deaktivieren der Unterstützung von untergeordneten Arrays beschrieben.
{
"response":{
"docs":[
{
"id":"id_val",
"childrenArray":[1,2,3],
"anotherArray":[{"key1":"value1"}, {"key1": "value2"}],
"elementWithArray":{"childrenArray":[1,2,3]}
}
]
}
}
| Pfad | Arrays verwerfen aktiviert | Arrays verwerfen deaktiviert |
|---|---|---|
| /response/docs/docs | Erstellt einen Datensatz mit den folgenden Spalten und Werten:
|
Erstellt einen Datensatz mit den folgenden Spalten und Werten:
|
| /response/docs/docs/anotherArray/anotherArray | Erstellt zwei Datensätze mit jeweils einer Spalte: key1. | Erstellt zwei Datensätze mit jeweils einer Spalte: key1. |
| /response/docs/docs/ChildrenArray/ChildrenArray | Funktioniert nicht und gibt einen Fehler „Pfad sollte immer auf JSON-Objekte verweisen“ zurück, da sich die Werte im Array nicht in einer Schlüssel-Wert-Struktur befinden. | Funktioniert nicht und gibt einen Fehler „Pfad sollte immer auf JSON-Objekte verweisen“ zurück, da sich die Werte im Array nicht in einer Schlüssel-Wert-Struktur befinden. |
Verwaistes Array
- Pfad für jede Zeile:
// - Ergebnis: 2 Datensätze
[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
}
]
Mehrere Elemente anstelle eines Arrays
- Pfad für jede Zeile:
/problems/problem - Ergebnis: 3 Datensätze
Wichtig:
Dieses Format wird nicht empfohlen. JSON-Dateien müssen RFC-4627 entsprechen, das besagt, dass Namen innerhalb eines Objekts eindeutig sein müssen. Verwenden Sie stattdessen JSON-Arrays.
{
"problems":{
"title":"2 problems",
"problem":{
"number":"PRBTEST001",
"short_description":"testsd1"
},
"problem":{
"number":"PRBTEST002",
"short_description":"testsd2"
}
},
"problems":{
"title":"1 problem",
"problem":{
"number":"PRBTEST005",
"short_description":"testsd5"
}
}
}