Để xử lý các tập hợp kết quả có chứa một số lượng lớn các hàng, Merchant Center
Ngôn ngữ truy vấn trung tâm hỗ trợ tính năng phân trang. Hai thông số có sẵn cho
kiểm soát phân trang trong yêu cầu reports.search
nội dung:
page_size
và page_token
, ngoài một trường đầu ra trong phản hồi
nội dung:
next_page_token
.
Tham số page_size
chỉ định số hàng tối đa cần truy xuất trong một
một yêu cầu duy nhất. Nếu bạn không chỉ định, Analytics sẽ tự động đặt thành kích thước trang tối đa
1000 hàng.
Tham số page_token
chỉ định mã thông báo của trang cần trả về. Nếu
chưa chỉ định, trang đầu tiên sẽ được trả về. Để truy xuất trang tiếp theo, phương thức
giá trị nhận được dưới dạng next_page_token
từ lệnh gọi reports.search
trước đó
phải được cung cấp dưới dạng page_token
. Khi page_token
được cung cấp, mọi giá trị khác
tham số trong lệnh gọi phải khớp với lệnh gọi trước đó trả về
page_token
để tránh hành vi không mong muốn.
Ví dụ:
SELECT
segments.offer_id,
metrics.impressions,
metrics.clicks,
metrics.ctr
FROM MerchantPerformanceView
WHERE segments.date BETWEEN '2021-12-01' AND '2021-12-31'
Đối với truy vấn này, giả sử tài khoản chứa 100.000 offer_ids
và
page_size
được đặt thành 200. Sau đó, tập hợp kết quả sẽ chứa 200 ReportRow
trong phản hồi đầu tiên, cùng với next_page_token
.
Để truy xuất 200 hàng tiếp theo, hãy gửi lại yêu cầu với cùng kích thước trang,
nhưng hãy cập nhật page_token
của yêu cầu thành
next_page_token
Sau đây là ví dụ về nội dung phản hồi (năm kết quả đầu tiên cộng với
next_page_token
):
{
"results": [
{
"segments": {
"offerId": "12345"
},
"metrics": {
"clicks": "0",
"impressions": "59",
"ctr": 0
}
},
{
"segments": {
"offerId": "12346"
},
"metrics": {
"clicks": "9625",
"impressions": "276695",
"ctr": 0.034785594246372356
}
},
{
"segments": {
"offerId": "12347"
},
"metrics": {
"clicks": "148",
"impressions": "22045",
"ctr": 0.0067135404853708325
}
},
{
"segments": {
"offerId": "12348"
},
"metrics": {
"clicks": "11",
"impressions": "1100",
"ctr": 0.01
}
},
{
"segments": {
"offerId": "12349"
},
"metrics": {
"clicks": "569",
"impressions": "62977",
"ctr": 0.0090350445400701838
}
},
...
],
"nextPageToken": "CMgB"
}