リスト オペレーションの操作

一部のサービスでは、行やリソースの説明など、大量のアイテムのリストが返される可能性があります。CPU とメモリの使用量を制御するために、サービスはこれらの リソースを pages で返します。これは、アイテムの小さなサブセットで、次のサブセットをリクエストするための継続トークンが含まれています。

ページごとにアイテムを反復処理するのは面倒な場合があります。クライアント ライブラリには、ページを非同期イテレータに変換するアダプターが用意されています。このガイドでは、これらのアダプターの使用方法について説明します。

前提条件

このガイドでは、Secret Manager サービスを使用してリスト操作を示します。このガイドに含まれるコンセプトは、他のサービスにも適用されます。

このガイドの手順を行うには、Secret Manager サービスを有効にしてログインし、アカウントに必要な権限が付与されていることを確認する必要があります。これらの前提条件を満たす方法については、 サービスのクイックスタートをご覧ください。

Rust ライブラリの設定手順については、 開発環境をセットアップするをご覧ください。

依存関係

Cargo.toml ファイルに Secret Manager ライブラリを追加します。

cargo add google-cloud-secretmanager-v1

リストメソッドの反復処理

リストメソッドのアイテムを反復処理するために、API は ItemPaginator トレイトの実装を返します。use 宣言を使用して、トレイトをスコープに導入します。

use google_cloud_gax::paginator::ItemPaginator as _;

アイテムを反復処理するには、by_item メソッドを使用します。

let mut list = client
    .list_secrets()
    .set_parent(format!("projects/{project_id}"))
    .by_item();
while let Some(secret) = list.next