Минимальный пример C++ S3 ListObjects с использованием minio-cpp

list_objects.cpp
#include <client.h>

int main(int argc, char* argv[]) {
  // Создать базовый URL S3.
  minio::s3::BaseUrl base_url("minio.mydomain.com");

  // Создать провайдер учётных данных.
  minio::creds::StaticProvider provider(
      "my_access_key", "my_secret_key");

  // Создать клиент S3.
  minio::s3::Client client(base_url, &provider);
  std::string bucket_name = "my-bucket";

  minio::s3::ListObjectsArgs args;
  args.bucket = bucket_name;
  // Необязательный фильтр префикса
  args.prefix = "folder/";

  minio::s3::ListObjectsResult result = client.ListObjects(args);
  for (; result; result++) {
      minio::s3::Item item = *result;
      if (!item) {
        throw std::runtime_error("Ошибка во время ListObjects(): " + item.Error().String());
      }
      std::cout << item.name << std::endl;
  }

  return EXIT_SUCCESS;
}

Check out similar posts by category: C/C++ S3