本页面介绍了不同的 Cloud Storage 工具和库如何对结果进行分页。列出大量对象或存储桶时需要进行分页。
控制台
Google Cloud 控制台会在存储桶和存储桶详情页面中自动对存储桶和对象列表进行分页。
命令行
Google Cloud CLI 会自动对存储桶和对象列表进行分页。
客户端库
C++
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回迭代器。如需查看此迭代器的使用方式示例,请参阅 ListObjects() 的 C++ 参考文档。
C#
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回迭代器。如需查看此迭代器的使用方式示例,请参阅 ListObjects() 的 C# 参考文档。
Go
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回迭代器。如需查看此迭代器的使用方式示例,请参阅 Bucket.Objects 的 Go 参考文档。
Java
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回分页令牌。如需查看其使用方式示例,请参阅 Java 参考文档。
Node.js
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回迭代器。如需查看此迭代器的使用方式示例,请参阅 getFiles() 的 Node.js 参考文档。
PHP
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回迭代器。如需查看此迭代器的使用方式示例,请参阅 Objects 的 PHP 参考文档。
Python
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回迭代器。如需查看此迭代器的使用方式示例,请参阅页面迭代器的 Python 参考文档。
Ruby
默认情况下,客户端库会执行分页操作。当您调用支持分页的函数时,响应中会返回迭代器。如需查看此迭代器的使用方式示例,请参阅 Google::Cloud::Storage::File::List 的 Ruby 参考文档。
REST API
JSON API
当您调用支持分页的函数时,如果列表不完整,则响应中会返回连续令牌 nextPageToken。nextPageToken 表示返回的最后一个结果。将 nextPageToken 的值传递给后续请求的 pageToken 参数时,系统将从最后一个结果之后开始返回下一页结果。
例如,假设您请求列出名为 my-bucket 的存储桶中的对象,该请求的响应中包含 nextPageToken:
{
"kind": "storage#objects",
"nextPageToken": "CgtzaGliYS0yLmpwZw==",
"items": [
{
OBJECT_1_METADATA
},
{
OBJECT_2_METADATA
},
…
]
}您将使用以下 HTTP 请求继续列出 my-bucket 中的对象:
GET https://storage.googleapis.com/storage/v1/b/my-bucket/o?pageToken=CgtzaGliYS0yLmpwZw==
如需详细了解如何对结果进行分页,请参阅 Objects: list 或 Buckets: list 的 JSON 参考文档。
XML API
当您调用支持分页的函数时,如果列表不完整,则响应中会返回连续令牌 NextContinuationToken。NextContinuationToken 表示返回的最后一个结果。将 NextContinuationToken 的值传递给后续请求的 continuation-token 参数时,系统将从最后一个结果之后开始返回下一页结果。
例如,假设您请求列出名为 my-bucket 的存储桶中的对象,该请求的响应中包含 NextContinuationToken:
<?xml version='1.0' encoding='UTF-8'?>
<ListBucketResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'>
<Name>my-bucket</Name>
<NextContinuationToken>CgtzaGliYS0yLmpwZw==</NextContinuationToken>
<KeyCount>2</KeyCount>
<MaxKeys>2</MaxKeys>
<IsTruncated>true</IsTruncated>
<Contents>
...
</Contents>
...
</ListBucketResult>请注意,list-type 必须设置为 2,才能在列出对象时返回 NextContinuationToken。
您将使用以下 HTTP 请求继续列出 my-bucket 中的对象:
GET /?continuation-token=CgtzaGliYS0yLmpwZw==&list-type=2 HTTP/1.1 Host: my-bucket.storage.googleapis.com
如需详细了解如何对存储桶的结果进行分页,请参阅 List Objects 的 XML 参考文档。