2014-12-30 3 views
0

Java SDK를 사용하여 Box에 연결하고 있습니다. 나는 루트 폴더를 찾는다 (이것은 작은 dev 인스턴스이므로 검색을 신경 쓰지 않아도된다.) 나는 검색 쿼리를 실행하고 결과를 얻는다. 내 문제는 검색 매개 변수가 일관되게 또는 전혀 작동하지 않는 것 같습니다. 예를 들어box-api 검색 매개 변수가 작동하지 않습니까?

  • 이 쿼리

    반복자으로 결과 집합 = rootFolder.search ("쿼리 = NR_chewy_chic_swt_pot_app & file_extensions = JPG & 콘텐츠 _ = 이름 & 유형 = 파일") 반복자().;

은 세 개의 항목을 반환합니다. 그것을 실행/아무것도 저장/다시 컴파일하지 않는 것 때문에

NR_chewy_chic_swt_pot_app.jpg 
NR Chewy Chicken AD02.xls 
PreInvoice_M197301-3644756_NR Chewy Treats SURP.pdf 
  • 나는 문자열 "& file_extensions = JPG"를 제거하고 나는 같은 세 가지 결과를 얻을 수 있습니다.

  • "& type = file"을 "& type = folder"로 변경하면 동일한 결과가 나옵니다.

  • "query = NR_chewy_chic_swt_pot_app"을 "query = NR"로 변경하면 NO 결과가 나타납니다. 비록 SO 사용자 인 Peter (Box를 위해 일하는 것으로 보이는)가 부분 문자열이 1과 일치해야한다고 말합니다.

검색 매개 변수의 순서를 재정렬하려고 시도했습니다. 내가 뭘 놓치고 있니?

감사의 SDK에서 에릭 B.

+0

수정 해 주셔서 감사합니다. 나는 제목을 신경 쓰지 않았지만 아마 너무 자기 비추천적입니까? – user1268162

답변

0

고급 검색 has yet to be implemented (이것은 아직 베타 버전 이후),하지만 앞으로 몇 주 안에 추가됩니다.

호출이 작동하지 않는 이유는 쿼리 메서드 매개 변수가 API 호출에서 "query" URL parameter으로 전송 되었기 때문입니다. 따라서 쿼리 문자열에 앰퍼샌드 이스케이프됩니다.

즉각적인 해결 방법이 필요한 경우 BoxAPIRequest and BoxAPIResponse 클래스를 사용하여 사용자 지정 검색 요청을 할 수 있습니다. 예 :

BoxAPIConnection api = new BoxAPIConnection("token"); 
URL url = new URL("https://api.box.com/2.0/search?query=NR_chewy_chic_swt_pot_app&file_extensions=jpg&content_type=name&type=file") 
BoxAPIRequest request = new BoxAPIRequest(api, url, "GET"); 
BoxJSONResponse response = (BoxJSONResponse) request.send(); 
String json = response.getJSON(); 

죄송합니다. query이 URL 쿼리 문자열이 아닌 쿼리 필드를보다 명확하게 나타내도록 설명서를 업데이트 할 것입니다.

+0

모든 모호함이 내 머리 속에있는 것이지 문서가 아닙니다. 이것은 박스에 대한 첫 번째 패스이므로 여전히 그것에 대해 생각하는 방법을 생각하고 있습니다. 좋은 대답! 나는 내일 그것을 시험 할 것이다. – user1268162