我必须重新组织S3对象 - 基本上将它们从一个前缀移动到另一个前缀。
我是通过将原始对象从源路径复制到目标路径来完成的。
我想保留原始对象上的原始时间戳。
我正在使用Java sdk来执行此任务。
我试图通过以下方式做到这一点:
// Create a meta object to apply to the new object
ObjectMetadata newObjectMetadata = new ObjectMetadata();
// Next I set the lat mod date on the new meta object from the old object summary
newObjectMetadata.setLastModified(Original_objectSummary.getLastModified());
// Next I create a CopyObjectRequest
CopyObjectRequest cor = new CopyObjectRequest(bucket, objectSummary.getKey(), bucket, targetKey);
// Next I set the new object meta data on the copy request
cor.setNewObjectMetadata(newObjectMetadata);
但是,在创建对象时,它具有上次修改日期,如AWS管理控制台中所示,设置为新对象的创建日期。
任何帮助或澄清表示赞赏。
感谢。
答案 0 :(得分:3)
当我需要这样做时,由于您指定的原因,我最终必须将原始的last_modified时间戳保存为单独的x-amz-meta-属性。那是使用其他语言(Perl和Python),所以我认为这不是Java SDK问题。