我对 S3 文件密钥有疑问。我正在上传一个图像文件,其密钥是图像的 url。这是代码片段。
AmazonS3 s3 = new AmazonS3Client(new BasicAWSCredentials(ACCESS_KEY, SECRET_KEY));
PutObjectRequest putObj = new PutObjectRequest(BUCKET, KEY, createInputStream(IMAGE_PATH), createMetadata("image/jpeg"));
putObj.setCannedAcl(CannedAccessControlList.PublicRead);
PutObjectResult result = s3.putObject(putObj);
现在,这是一个示例键:image/staging/file/GUID1234
和图像名称:test.jpeg
现在,这就是上传后在 S3 中的样子。 测试桶/图像/暂存/文件/GUID1234
没有参考图像名称。图片网址显示为http://TestBucket.s3.amazonaws.com/image/staging/file/GUID1234
如您所见,虽然它在浏览器中正确显示了图像,但没有引用图像名称。我需要将此 url 嵌入到 html 页面中,如果缺少图像名称,它就不行了。
只是想知道,是否有办法保留图像名称,使 url 看起来像http://TestBucket.s3.amazonaws.com/image/staging/file/GUID1234/test.jpeg
任何指针将不胜感激。
谢谢