该类是 MinIO Java SDK 用于执行存储桶和对象操作的简单存储服务(又名 S3)客户端。
创建、列出和删除存储桶
上传、获取和删除存储桶生命周期配置
上传、获取和删除存储桶策略配置
上传、获取和删除存储桶加密配置
上传和获取存储桶默认保留配置
上传和获取存储桶通知配置
启用和禁用存储桶版本控制
上传、获取、删除和列出对象
通过组合现有对象来创建对象
上传和获取对象保留和合法保留
通过 SQL 语句过滤对象内容
如果提供了访问/秘密密钥,则所有 S3 操作请求都使用 AWS 签名版本 4 进行签名; 否则他们是匿名执行的。
使用匿名访问创建具有给定端点的 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient("https://play.min.io");
其中,endpoint 是 S3 服务的 URL、域名、IPv4 或 IPv6 地址。更多 endpoint 实例:
https://s3.amazonaws.com https://s3.amazonaws.com/ https://play.min.io http://play.min.io:9010/ localhost localhost.localdomain play.min.io 127.0.0.1 192.168.1.60 ::1
使用匿名访问创建具有给定 URL 对象的 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient(new URL("https://play.min.io"));
使用匿名访问使用给定的 HttpUrl 对象创建 MinIO 客户端对象。实例:
MinioClient minioClient = new MinioClient(new HttpUrl.parse("https://play.min.io"));
使用给定的 endpoint、accessKey 和 secretKey 创建 MinIO 客户端对象。实例:
MinioClient minioClient = new MinioClient("https://play.min.io", "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG");
使用给定的 endpoint、accessKey、secretKey 和区域名称创建 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient("https://play.min.io", "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG", "us-west-1");
使用给定的 URL 对象、accessKey 和 secretKey 创建 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient(new URL("https://play.min.io"), "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG");}
使用给定的 HttpUrl 对象、accessKey 和 secretKey 创建 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient(HttpUrl.parse("https://play.min.io"), "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG");
使用给定的 endpoint、端口、accessKey 和 secretKey 创建 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient("play.min.io", 9000, "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG");
使用安全 (TLS) 连接创建具有给定 endpoint、accessKey 和 secretKey 的 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient("play.min.io", "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG", true);
使用给定的 endpoint、端口、accessKey、secretKey和安全 (TLS) 连接创建 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient("play.min.io", 9000, "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG", true);
使用给定的 endpoint、端口、accessKey、secretKey、区域和安全 (TLS) 连接创建 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient("play.min.io", 9000, "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG", true);
使用给定的 endpoint、端口、accessKey、secretKey、区域和安全 (TLS) 连接创建 MinIO 客户端对象。例如:
MinioClient minioClient = new MinioClient("play.min.io", 9000, "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG", true, customHttpClient);
makeBucket:创建一个新的存储桶
listBuckets:列出所有存储桶
bucketExists:检查存储桶是否存在
removeBucket:删除一个存储桶
listObjects:列出某个存储桶中的所有对象
listIncompleteUploads:列出存储桶中被部分上传的对象
getObject:获取一个对象
putObject:上传一个对象
copyObject:拷贝一个对象
statObject:获取一个对象元数据
removeObject:删除一个对象
removeIncompleteUpload:删除一个未上传完成的对象
presignedGetObject:生成一个给 HTTP GET 请求用的 presigned URL。浏览器/移动端的客户端可以用这个 URL 进行下载,即使其所在的存储桶是私有的。这个 presigned URL 可以设置一个失效时间,默认值是7天。
presignedPutObject:生成一个给 HTTP PUT 请求用的 presigned URL。浏览器/移动端的客户端可以用这个URL进行上传,即使其所在的存储桶是私有的。这个 presigned URL可以设置一个失效时间,默认值是7天。
presignedPostPolicy:允许给 POST 请求的 presigned URL 设置策略,比如接收对象上传的存储桶名称的策略,key 名称前缀,过期策略。
getBucketPolicy:获得指定对象前缀的存储桶策略
setBucketPolicy:给一个存储桶+对象前缀设置策略