2015-11-30 61 views
0

我在My App中成功列出了消息。現在我需要分頁 (每頁大約8個)。我跟着谷歌的文件,但它只給出了一個pageToken,但如何使其工作?關於分頁gmail api與php

回答

2

如果你list messages,仍然有更多的結果要獲取,響應將包含nextPageToken

請求

userId = me 
maxResults = 8 

GET https://www.googleapis.com/gmail/v1/users/me/messages?maxResults=8&access_token={YOUR_API_KEY} 

響應

{ 
"messages": [ 
    { 
    "id": "151596a5055b9412", 
    "threadId": "151596a5055b9412" 
    }, 
    { 
    "id": "1515915d0fcfd685", 
    "threadId": "1515915d0fcfd685" 
    }, 
    { 
    "id": "15158e6826ed7587", 
    "threadId": "15158e6826ed7587" 
    }, 
    { 
    "id": "15158e0e37572671", 
    "threadId": "15158e0e37572671" 
    }, 
    { 
    "id": "151586443b5b309a", 
    "threadId": "151586443b5b309a" 
    }, 
    { 
    "id": "15157c4b11732c5c", 
    "threadId": "1510f004b81a9de2" 
    }, 
    { 
    "id": "151576512d37c9ec", 
    "threadId": "1515765122918d37" 
    }, 
    { 
    "id": "1515765122918d37", 
    "threadId": "1515765122918d37" 
    } 
], 
"nextPageToken": "01770178536732383613", // Here it is! 
"resultSizeEstimate": 26 
} 

只是包含這個值作爲下一個請求的pageToken

請求

userId = me 
maxResults = 8 
pageToken = 01770178536732383613 

GET https://www.googleapis.com/gmail/v1/users/me/messages?maxResults=8&pageToken=01770178536732383613&access_token={YOUR_API_KEY} 

響應

{ 
"messages": [ 
    { 
    "id": "1515762549119366", 
    "threadId": "1513f096ab90fdab" 
    }, 
    { 
    "id": "15157616d03a66a1", 
    "threadId": "1513f096ab90fdab" 
    }, 
    { 
    "id": "151575f958ac69e8", 
    "threadId": "1513338849950602" 
    }, 
    { 
    "id": "1515756737710843", 
    "threadId": "1515756737710843" 
    }, 
    { 
    "id": "1515756735412b45", 
    "threadId": "1515756735412b45" 
    }, 
    { 
    "id": "1515756710eed602", 
    "threadId": "1515756710eed602" 
    }, 
    { 
    "id": "15157567089a24b0", 
    "threadId": "15157567089a24b0" 
    }, 
    { 
    "id": "151574a87fefe71d", 
    "threadId": "151336e890f46a2c" 
    } 
], 
"nextPageToken": "13534757816909071635", 
"resultSizeEstimate": 27 
} 

當在你已經賺得每個結果有響應無nextPageToken

+0

謝謝我做的一切都是照你說的,然後我得到了一個錯誤 { 「錯誤」:{ 「錯誤」: { 「域」:「全局」, 「理由」:「需要」 , 「消息」: 「登錄必需」, 「的locationType」: 「首標」, 「位置」: 「授權」 } ], 「代碼」:401, 「消息」: 「登錄必需」 } } – khaleader

+1

@khaleader你需要一個正確的標記。嘗試使用Gmail API範圍在[Oauth遊樂場](https://developers.google.com/oauthplayground/)上獲取令牌,然後重試。 – Tholle

+0

我非常感謝您的幫助,上面的鏈接將我帶到了應用程序之外 我想留在應用程序中,因爲我使用laravel,我認爲如果沒有內置的分頁程序 – khaleader