2017-05-10 2 views
-1

오프라인 변환 데이터를 Facebook의 API로 업로드 할 때 API 호출 당 최대 2,000 개의 이벤트가 있습니다.큰 JSON 개체를 작은 개체로 분할하는 방법 - NODEJS

2000 개가 넘는 이벤트가있는 JSON 객체를 업로드하려면 한 번에 하나씩 작은 객체로 나눠서 POST해야합니다.

어떻게 달성 할 수 있습니까?

감사합니다.

답변

0

docs에 따라 수행하려는 개별 작업을 설명하는 JSON 개체를 작성하여 배치 요청을 만들 수 있습니다. 일괄 요청에서 최대 50 개의 작업을 수행 할 수 있지만 각 작업은 단일 호출로 계산됩니다. 예 : 단일 배치 요청에서 50 개의 작업은 할당량에 대해 50 개의 요청으로 계산됩니다.

0

답변 해 주셔서 감사합니다.

해결책이 이미 존재할 때 해결책을 찾기 위해 시도한 훌륭한 예입니다.

json 개체를 분할하려는 사람은 여기에서 사용한 방법을 사용하십시오. BATCHSIZE 데이터의 끝에 도달 할 때 차단되는 마지막을 제외한 각각의 생성 된 JSON의 크기 (존재와

.

var batchSize = 1900; 
    var total = jsonObj.length; 

    for (var j = 0; j <= Math.floor(total/batchSize); j++) { 
     var data = []; 
     var batchStart = j*batchSize; 

     for (var i = batchStart; i < batchStart+batchSize; i++) { 
      var obj = {}; 
      var index = i; 

      obj.currency = jsonObj[index].someFieldFoo; 
      data.push(obj); 
      if (index + 1 >= jsonObj.length) { 
       break; 
      } 
      // console.log(data); 

     }; 
    };