JSON 파일 임포트 예시
이러한 예제에서는 다양한 유형의 JSON 데이터와 각 행에 필요한 경로를 임포트하는 방법을 보여줍니다. 임포트하는 JSON 파일은 다음 지침을 따라야 합니다.
파일 형식 데이터 소스 생성에 대한 단계별 지침은 다음 파일 형식 데이터 소스 생성문서를 참조하십시오.
- 배열의 경우 JSON 각 행의 경로는
/incidents/incidents와 같은 배열 루트 요소를 두 번 지정해야 합니다. - JSON 파일은 RFC-4627을 따라야 합니다. 예를 들어 쉼표 하나로 다음 이름에서 값을 구분해야 합니다. 객체 내의 이름은 고유해야 합니다.
@element,[index]또는text()와 같은 조건자와 자녀, 형제 또는 조상과 같은 축은 지원되지 않습니다.
단순 배열
- 각 행의 경로:
/incidents/incidents - 결과: 기록 2개
/incidents 배열이 두 번 포함됩니다. 이는 배열을 임포트할 때 필요합니다.{
"source":"HI",
"incidents":[
{
"number":"INC0000001",
"short_description":"Can't read email"
},
{
"number":"INC0000002",
"short_description":"Error loading XML file"
}
]
}
두 번째 수준의 배열
- 각 행의 경로:
/problems/data/data - 결과: 기록 3개
/data 배열이 두 번 포함됩니다.{
"problems":{
"id":"0",
"data":[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
},
{
"number":"PRBTEST003",
"short_description":"testsd3"
}
]
}
}
중첩 배열
- 각 행의 경로:
/problems/problems/data/data - 결과: 기록 3개
/problems 및 /data)가 두 번 포함됩니다.{
"problems": [
{
"id":0,
"data":[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
},
{
"number":"PRBTEST003",
"short_description":"testsd3"
}
]
}
]
}
하위(중첩된) 배열 지원
기본적으로 임포트는 하위(중첩된) 배열을 지원하지 않습니다. 데이터 소스 뷰에서 배열 취소 확인란의 선택을 취소하여 지원을 활성화할 수 있습니다. 다음 표에서는 하위 배열 지원을 사용하거나 사용하지 않도록 설정할 때의 다양한 동작에 대해 설명합니다.
{
"response":{
"docs":[
{
"id":"id_val",
"childrenArray":[1,2,3],
"anotherArray":[{"key1":"value1"}, {"key1": "value2"}],
"elementWithArray":{"childrenArray":[1,2,3]}
}
]
}
}
| 경로 | 배열 취소 사용 | 배열 취소 사용 안 함 |
|---|---|---|
| /response/docs/docs | 다음 열과 값이 있는 하나의 기록을 생성합니다.
|
다음 열과 값이 있는 하나의 기록을 생성합니다.
|
| /response/docs/docs/anotherArray/anotherArray | 각각 하나의 열(key1)이 있는 두 개의 기록을 생성합니다. | 각각 하나의 열(key1)이 있는 두 개의 기록을 생성합니다. |
| /response/docs/docs/childrenArray/childrenArray | 작동하지 않으며 경로를 반환합니다. 배열의 값이 키-값 구조에 있지 않기 때문에 항상 JSON 객체 오류를 참조해야 합니다 . | 작동하지 않으며 경로를 반환합니다. 배열의 값이 키-값 구조에 있지 않기 때문에 항상 JSON 객체 오류를 참조해야 합니다 . |
분리 배열
- 각 행의 경로:
- 결과: 기록 2개
[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
}
]
배열 대신 여러 요소
- 각 행의 경로:
/problems/problem - 결과: 기록 3개
중요사항:
이 형식은 권장되지 않습니다. JSON 파일은 객체 내의 이름이 고유해야 한다고 명시한 RFC-4627을 따라야 합니다. 대신 JSON 배열을 사용하십시오.
{
"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"
}
}
}