Este tema explica cómo usar OSS SDK for Python 2.0 para listar todos los vector buckets en su cuenta de Alibaba Cloud. Esta operación admite paginación.
Permisos
De forma predeterminada, una cuenta de Alibaba Cloud tiene permisos completos sobre sus recursos. Los usuarios y roles de RAM no tienen permisos por defecto. Para que un usuario o rol de RAM pueda invocar esta operación, una cuenta de Alibaba Cloud o un administrador de RAM debe otorgarle los permisos obligatorios mediante una RAM policy o un bucket policy.
|
API |
Acción |
Descripción |
|
ListVectorBuckets |
|
Lista los vector buckets. |
Definición del método
OSS SDK for Python 2.0 proporciona dos métodos para listar vector buckets:
list_vector_buckets(): Invoca la operación directamente. Debe gestionar la paginación manualmente.list_vector_buckets_paginator(): Usa un paginador. El SDK gestiona automáticamente la lógica de paginación. Se recomienda este método.
# Direct call
list_vector_buckets(request: ListVectorBucketsRequest, **kwargs) → ListVectorBucketsResult
Parámetros de solicitud
|
Parámetro |
Tipo |
Descripción |
|
request |
ListVectorBucketsRequest |
Los parámetros de la solicitud. Para más información, consulte ListVectorBucketsRequest |
Valores de retorno
|
Tipo |
Descripción |
|
ListVectorBucketsResult |
El valor de retorno. Para más información, consulte ListVectorBucketsResult |
Para consultar la definición completa del método, véase list_vector_buckets.
# Use a paginator
list_vector_buckets_paginator(**kwargs) → ListVectorBucketsPaginator[source]
Valores de retorno
|
Tipo |
Descripción |
|
ListVectorBucketsPaginator |
El valor de retorno. Para más información, consulte ListVectorBucketsPaginator |
Para consultar la definición completa del método con paginador, véase list_vector_buckets_paginator.
Código de ejemplo
El siguiente código de ejemplo usa un paginador para listar todos los vector buckets. El SDK gestiona automáticamente las solicitudes de paginación, lo que simplifica el código.
import argparse
import alibabacloud_oss_v2 as oss
import alibabacloud_oss_v2.vectors as oss_vectors
parser = argparse.ArgumentParser(description="list vector buckets sample")
parser.add_argument('--region', help='The region in which the bucket is located.', required=True)
parser.add_argument('--endpoint', help='The domain names that other services can use to access OSS')
parser.add_argument('--account_id', help='The account id.', required=True)
def main():
args = parser.parse_args()
# Loading credentials values from the environment variables
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# Using the SDK's default configuration
cfg = oss.config.load_default()
cfg.credentials_provider = credentials_provider
cfg.region = args.region
cfg.account_id = args.account_id
cfg.use_internal_endpoint = True # To access OSS over the public network, set this parameter to False or delete this line.
if args.endpoint is not None:
cfg.endpoint = args.endpoint
client = oss_vectors.Client(cfg)
# Create the Paginator for the ListVectorBuckets operation
paginator = client.list_vector_buckets_paginator()
# Iterate through the vector bucket pages
for page in paginator.iter_page(oss_vectors.models.ListVectorBucketsRequest(
)
):
for o in page.buckets:
print(f'Bucket: {o.name}, {o.location}')
if __name__ == "__main__":
main()
Referencias
Para consultar el código de ejemplo completo para listar vector buckets, véase list_vector_buckets.py.