如何获取文件下载的链接
我参照官方链接,进行的开发
https://cloud.google.com/storage/docs/access-control/signing-urls-with-helpers#storage-signed-url-object-java
但是后来发现这个方法是做了一个上传的链接,不符合我的业务需要
Storage.SignUrlOption.withV4Signature() 这个我也不是很明白(根据官方文档描述,链接最长7天)
我的业务需要一个可以下载的链接,而且可以设定链接的有效时长(下载的链接有效时长,可达几年)
求解
```java
public static void generateV4GetObjectSignedUrl(
String projectId, String bucketName, String objectName) throws StorageException {
// String projectId = "my-project-id";
// String bucketName = "my-bucket";
// String objectName = "my-object";
Storage storage = StorageOptions.newBuilder().setProjectId(projectId).build().getService();
// Define resource
BlobInfo blobInfo = BlobInfo.newBuilder(BlobId.of(bucketName, objectName)).build();
URL url =
storage.signUrl(blobInfo, 15, TimeUnit.MINUTES, Storage.SignUrlOption.withV4Signature());
System.out.println("Generated GET signed URL:");
System.out.println(url);
System.out.println("You can use this URL with any user agent, for example:");
System.out.println("curl '" + url + "'");
}
```