minio java生成一次性链接
时间: 2023-11-10 11:59:17 浏览: 249
Java实现MinIO文件服务器
5星 · 资源好评率100%
Minio Java SDK 提供了 `PresignedObject` 类来生成一次性链接。以下是一个简单的示例:
```java
import io.minio.MinioClient;
import io.minio.errors.MinioException;
import io.minio.messages.PresignedObject;
import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
public class MinioPresignedObjectExample {
public static void main(String[] args) {
try {
// 初始化 MinioClient
MinioClient minioClient = new MinioClient("http://localhost:9000", "accessKey", "secretKey");
// 生成一次性链接
PresignedObject presignedObject = minioClient.presignedGetObject("mybucket", "myobject");
// 输出链接
System.out.println(presignedObject.url());
} catch (InvalidKeyException | NoSuchAlgorithmException | IOException | MinioException e) {
e.printStackTrace();
}
}
}
```
在上面的示例中,我们先初始化了 `MinioClient`,然后调用 `presignedGetObject` 方法生成一次性链接,并通过 `url` 方法获取链接字符串。需要注意的是,生成链接的前提是对该对象具有读取权限。如果需要设置链接的有效期限,可以使用 `presignedGetObject` 方法的重载版本,例如:
```java
PresignedObject presignedObject = minioClient.presignedGetObject("mybucket", "myobject", 3600); // 链接有效期为 3600 秒
```
阅读全文