2014-10-15 2 views
1

25 개의 스레드 ID가 있습니다. 각 스레드의 모든 메시지에 대해 from 헤더를 얻고 싶습니다.25 개의 스레드에있는 모든 메시지의 헤더 만 가져 오기

현재 일괄 처리를하고 있는데, users.threads는 모든 메시지 내용과 첨부 파일을 불필요하게 다운로드합니다. 이점은 하나의 일괄 API 호출에서이 작업을 완료 할 수 있다는 것입니다.

메시지의 보낸 사람 헤더를 얻는 유일한 방법은 메시지를 개별적으로 요청하는 것입니다. 그래서 하나의 대안은 모든 스레드의 초기 가져 오기를 수행하고 각 스레드에 대한 메시지 ID 필드를 얻는 것입니다. 그런 다음 각각의 메시지를 가져 오기 위해 또 다른 N 세트의 배치 호출을 수행하십시오. 스레드는 많은 메시지를 가질 수 있고 각 일괄 처리 호출에는 100 건의 제한이 있습니다. 잠재적으로 많은 요청이 될 수 있습니다.

이 경우 gmail API가 반환하는 것은 무엇보다 효율적입니까? 모든 데이터 또는 많은 일괄 처리 메시지 호출과 함께 일괄 처리 스레드 호출?

+0

이상적인 해결책은 METADATA 형식을 지원하는 것 같습니다. users.threads.get에서 원하는 헤더 만 반환하지만 문서에서는 가능하지 않은 것처럼 보입니다. – aloo

답변

2

실제로 threads.get (format = METADATA)를 지원하는 서버가 이상적입니다.

그러나 각 스레드에서 threads.get()을 호출하지 않는 것이 좋습니다. 25 스레드 만 수행하면 큰 문제가 아니며 threads.get()은 매우 효율적입니다. 거대한 첨부 파일이 아닌 작은 본문 부분 만 반환합니다 (개별적으로 가져올 수있는 첨부 파일 ID 만 제공됨). Gmail이 threads.get()에 대해 format = METADATA를 제공하는 경우 변경이 간단하고 일괄 처리 등을 할 필요가 없습니다.

+0

고마워 !! – aloo