分頁
LSA 支援分頁功能,可透過多個頁面擷取 (提取) 方式,處理大型快照的要求。Google 會使用參數 maxresults
擷取特定合作夥伴端點,限制 JSON 回應中傳回的 serviceProviders 數量上限。合作夥伴會在 JSON 回應的 metadata.pagination.nextTokenParam
欄位中填入分頁符記。這個權杖的值是合作夥伴專屬,用於建構下一頁網址。最後一頁不得填入 nextTokenParam
欄位。請注意,即使最後一頁沒有 nextTokenParam
欄位,metadata.pagination
物件仍應一律填入資料 (因為結構定義中需要此物件)。此外,totalCount
表示所有頁面上的服務供應商總數 (或評論動態饋給中的 reviewItems
)。
舉例來說,如果合作夥伴在完整快照中有 200 個供應商,當 Google 使用網址 http://www.partners.com/feeds/{version}/profile&maxresults=100
啟動動態消息轉移作業時,第一頁應傳回前 100 個合作夥伴供應商,並包含以下 metaData
:
"metaData": {
"feedCategory":"SNAPSHOT",
"feedTimestampMicros":1532930955190163,
"apiVersion": "v1",
"pagination": {
"nextTokenParam": "yre7yiesar"
},
"totalCount":200
}
"serviceProviders": {....} // Contains 100 service provider objects.
Google 會剖析 nextTokenParam: "yre7yiesar"
,並使用下列網址啟動第二次轉移:
http:partners.com/feeds/{version}/profile&nextpagetoken=yre7yiesar&maxresults=100
第二頁應傳回最後 100 位供應商。由於第二頁也是最後一頁,因此不會填入 nextTokenParam
(請見下方的 metaData
範例),表示分頁已結束。
"metaData": {
"feedCategory":"SNAPSHOT",
"feedTimestampMicros":1532930955190164,
"apiVersion": "v1",
"pagination": {},
"totalCount":200
}
"serviceProviders": {....}
請注意,擷取所有網頁後,所有網頁的物件總數必須等於第一次擷取網頁時顯示的 totalCount
。serviceProviders