2014-09-29 4 views
1

사용자의 상자 계정에있는 모든 파일의 목록을 가져 와야 파일 목록을 표보기 (iOS)로 표시 할 수 있습니다.상자 계정의 모든 파일 얻기

내 사용자의 상자에있는 모든 폴더의/folders/{folder id}/items를 재귀 적으로 사용하여 성공적으로 구현했습니다.

그러나이 방법이 효과가있는 데는 다소 무리가 있습니다. 각 사용자의 폴더에 대한 요청 방법은 상당히 많을 수 있습니다.

모든 파일의 목록을 가져 오는 방법이 있습니까? 폴더를 포함해도 문제가 없으며 수동으로 무시할 수 있습니까?

검색을 사용하여 구현하려고했지만 모든 것을 반환 한 쿼리 매개 변수의 값을 식별 할 수 없습니다.

도움을 주시면 감사하겠습니다.

도와주세요, 오비완 케노비. 너는 내 유일한 희망이야.

답변

3

찾고 계신 것 (Box 계정을 통한 재귀 호출)을 사용할 수 없습니다. 우리는 엔터프라이즈 고객에게 파일 bajillions과 수백만 개의 폴더를 갖게 할 것입니다. 재귀 적으로 모든 것을 요구하는 것은 너무 오래 걸릴 것입니다.

우리가 일반적으로 권장하는 것은 할 수있는 한 적은 것을 요구하고, 여러 스레드를 사용하고 조금만 필요한 것이 무엇인지 예상하여 고성능 사용자 인터페이스를 제공 할 수 있습니다. 귀하의 최종 사용자.

예를 들어? fields = item_collection은 검색하는 데 비용이 많이 들며 paylaod에 많은 것을 추가 할 수 있습니다. Box API로부터 페이로드를 되 찾는 데 걸리는 시간의 2 배 또는 10 배가 될 수 있습니다. 대부분의 UI는 모든 폴더 안에 모든 항목을 표시 할 필요가 없습니다. 그래서 그들은 더 나은가? 필드 =.

가능한 한 가장 작은 호출을하면 응용 프로그램을 사용자에게 응답 할 수 있습니다. 물론 균형이 있습니다. 모바일 네트워크는 대기 시간이 길고 때로는 다음 번 API 호출이 약간의 추가 작업을하는 것이 느립니다. 그러나 폴더 트리의 경우 현재 수준 만 검색하고 표시 한 다음 사용자가 첫 번째 수준을보고있는 동안 한 수준 아래로 가져 오기 시작하여 높은 성능을 얻을 수 있습니다.

동일한 이미지가 표시됩니다. 사용자가 폴더를 샅샅이 조사하고 사진의 축소 그림보기를 시작하면 동일한 폴더에서 다른 축소판을보고 싶어 할 가능성이 큽니다. 앱이이를 예상하고 백그라운드에서 하나 또는 두 개의 추가 기능을 시작합니다. 예, 더 많은 API 호출을 의미하지만 사용자는 빠른 속도로 앱에 더 높은 평점을 부여합니다.

+0

도움 주셔서 감사합니다. 특정 확장자 (예 : .docx)와 함께 사용자의 상자에있는 모든 파일을 가져 오는 것이 문제가되지 않는다고 가정합니다. 내 문제는, 그 내 애플 리케이션을 사용하여 열 수있는 그의 상자에있는 모든 파일의 알파벳 순으로 정렬 된 목록으로 사용자를 제시 싶습니다. 폴더 구조를 탐색하는 전체 과정을 우회하기를 희망했습니다. –

+1

검색 색인에 확장자를 포함하여 파일 이름을 포함 시키므로 '.docx'항목을 찾아 파일로 제한하여 모든 "* .docx"파일을 찾을 수 있습니다. 검색 결과의 페이지가 매겨집니다. – Peter