获取对象列表

使用 listObject 接口展示某一个桶中的所有对象。

以下代码展示如何展示对象列表:

bool S3Demo::ListObjects()
{
  Aws::S3::Model::ListObjectsRequest request;
  request.WithBucket(s3_bucket_name);

  auto outcome = s3_client->ListObjects(request);
  if (outcome.IsSuccess()) {
    std::cout << "Objects in bucket '" << s3_bucket_name << "':"
      << std::endl << std::endl;

    Aws::Vector<Aws::S3::Model::Object> objects =
      outcome.GetResult().GetContents();

    for (Aws::S3::Model::Object& object : objects) {
      std::cout << object.GetKey() << std::endl;
    }

    return true;
  } 
  else {
    std::cout << "Error: ListObjects: " << outcome.GetError().GetMessage() << std::endl;
    return false;
  }
}