我创建了一个 java 服务来返回 S3 对象的元数据,但在我的 json 响应中它没有返回服务器端加密和对象 URL
这是我的代码
@GetMapping(value = "/ListS3BucketsObjects")
public List<S3ObjectSummary> ListS3BucketsObjects(@RequestParam String bucketName) {
try {
BasicAWSCredentials creds = new BasicAWSCredentials("xxxx",
"xxxxxxx");
final AmazonS3 s3client = AmazonS3ClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(creds))
.withRegion(Regions.US_EAST_1).build();
ObjectListing objectListing = s3client.listObjects(bucketName);
return objectListing.getObjectSummaries();
} catch (Exception Ex) {
throw Ex;
}
}
我得到这样的结果
[
{
"bucketName": "xxxx",
"key": "xx",
"size": 489583,
"lastModified": "2020-01-01T06:59:52.000+0000",
"storageClass": "STANDARD",
"owner": {
"displayName": "xxxxx",
"id": "xxx"
},
"etag": "xxxxx"
}]
如何获取对象 URL 和服务器端加密?
最佳答案
检查这个answer 。
基于S3ObjectSummary
,您可以检索元数据:
ObjectMetadata objectMetadata = s3client.getObjectMetadata(bucketName, objectSummary.getKey());
关于java - 如何在返回 S3ObjectSummary 时获取对象 URL 和服务器端加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59579944/