Amazon s3 S3 java SDK-将到期时间设置为对象
我正在尝试将一个文件上载到S3,并使用JavaSDK为其设置过期日期 这是我得到的代码:Amazon s3 S3 java SDK-将到期时间设置为对象,amazon-s3,aws-sdk,Amazon S3,Aws Sdk,我正在尝试将一个文件上载到S3,并使用JavaSDK为其设置过期日期 这是我得到的代码: Instant expiration = Instant.now().plus(3, ChronoUnit.DAYS); ObjectMetadata metadata = new ObjectMetadata(); metadata.setExpirationTime(Date.from(expiration)); metada
Instant expiration = Instant.now().plus(3, ChronoUnit.DAYS);
ObjectMetadata metadata = new ObjectMetadata();
metadata.setExpirationTime(Date.from(expiration));
metadata.setHeader("Expires", Date.from(expiration));
s3Client.putObject(bucketName, keyName, new FileInputStream(file), metadata);
在S3控制台中,对象上没有过期数据
我能做什么
问候,,
我想这是两件不相关的事情。控制台中显示的过期时间为
x-amz-expiration
,由系统、生命周期策略填充。它是只读的
x-amz-expiration
如果将对象的过期操作配置为bucket生命周期配置的一部分,AmazonS3将返回此标头。标头值包括“到期日期”组件和URL编码的“规则id”组件
Expires
是在对象上设置时,在下载对象时在响应中返回的头
过期
对象不再能够缓存的日期和时间。有关更多信息,请访问
无法告诉S3特定对象何时过期(删除)——这只是bucket生命周期策略的一部分,如《用户指南》下所述。不允许为单个对象设置过期日期,应为bucket()设置生命周期规则