イメージはAmazon S3バケットにアップロードされます。私は予約済みURLをAmazonサーバーから取得する必要があります。また、そのURLの有効期限を設定したいと思います。それには最大17日しかかかりません。しかし、私は1年間の有効期限を設定することはできません。Amazon S3バケットの予約済みURLの有効期限を現在の日付から1年間で設定する方法
あなたが事前に署名したURLを「取得」しません Calendar cal = Calendar.getInstance();
cal.add(Calendar.YEAR, 1);
Date nextYear = cal.getTime();
GeneratePresignedUrlRequest generatePresignedUrlRequest = new GeneratePresignedUrlRequest(
"bucketName", "accessname");
generatePresignedUrlRequest.setMethod(HttpMethod.GET);
generatePresignedUrlRequest
.setExpiration(nextYear);
URL url = s3client
.generatePresignedUrl(generatePresignedUrlRequest);
bucketURL = url.toString();
TL:DR-v4署名アルゴリズムはわずか7日間です。 (ドキュメントのv4について:この最新の署名バージョンは、すべての地域でサポートされており、2014年1月30日以降の新しい地域では署名バージョン4のみがサポートされます)。したがって、必要に応じて事前設定されたURLを生成する方がよいでしょう。 – HopeKing