API 반복 호출

피드백

던전앤파이터 아이템 검색 사이트(던드랍)을 배포 후 특정 사용자의

특정아이템의 보유 아이템 표시가 되지 않는 다는 문의를 받음.

원인

캐릭터별 타임라인 API 조회시 row 제한 개수가 존재 해서
최근 아이템 획득 100건 이후에 아이템은 보유 아이템 처리가 되지 않음.

해결

만약 타임라인의 다음 row가 존재하여 next key 값이 리턴 되는 경우
next key이 리턴 되지 않을 때 까지 타임라인 API를 반복 호출함

export const characterTimelineFetchNext = async (dispatch, serverId, characterId, next) => {
  callAPI(`/servers/${serverId}/characters/${characterId}/timeline?next=${next}&`, {}, dispatch)
    .then(response => {
      const { status, data } = response;
      if (status === 200) {
        dispatch({
          type: ActionTypes.CHARACTER__FETCH_TIMELINE,
          item: data
        });
        if (data.timeline.next) {
          characterTimelineFetchNext(dispatch, serverId, characterId, data.timeline.next);
        }
      }
    });
};

좋은 웹페이지 즐겨찾기