API 작업을 호출하여 개체 목록을 가져온 다음 해당 목록의 각 개체에 대해 다른 API 작업을 호출하여 해당 개체에 대한 추가 세부 정보를 가져오고 해당 세부 정보를 목적. 목표는 필요한 모든 특성 (또는 세부 사항)을 가진 오브젝트 목록을 리턴하는 것입니다. 아래 예제에서 /allObjects
호출은 2 개의 속성 (id
및 k1
)이있는 모든 개체의 목록을 가져옵니다. 하지만 내 신청서에는 id
, k1
및 k4
의 3 가지 속성이 필요합니다. 그래서 k4
속성을 포함하는 각 개체에 대한 자세한 정보를 얻기 위해 다른 API 메서드를 호출합니다. 해당 상세 속성을 원래 결과 집합의 개체에 복사하고 "풍부한"결과 집합을 반환합니다. 그러나이 지연 시간 비용은 높을 수 있습니다. 응용 프로그램을 너무 느리게하지 않고이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 현실 세계에서 나는 500-2000 개의 대상을 다루고 있습니다.여러 API 호출 결과 결합
GET /allObjects yields JSON results =>
{
"data" : [
{
"id" : "123",
"k1" : "v1"
}, {
"id" : "456",
"k1" : "v1"
}
]
}
for (obj in results.data) {
GET /object/{obj.id} yields JSON result =>
{
"data" : {
"id" : "123",
"k1" : "v1",
"k2" : "v2",
"k3" : "v3",
"k4" : "v4"
}
}
// Add k4 property to original result-set object, and assign
// it the value of the k4 property in the individual result object.
obj.k4 = result.data.k4;
}
return results.data;