GeneratePresignedUrlRequest

GeneratePresignedUrlRequest

有没有办法知道某人是否已将某些内容上传到生成的S3的公共预签名URL?就像将触发我的servlet的回调一样。

例如:

我从此docs创建了一个预签名的URL

AmazonS3 s3Client = new AmazonS3Client(new ProfileCredentialsProvider());

java.util.Date expiration = new java.util.Date();
long msec = expiration.getTime();
msec += 1000 * 60 * 60; // Add 1 hour.
expiration.setTime(msec);

GeneratePresignedUrlRequest generatePresignedUrlRequest = new GeneratePresignedUrlRequest(bucketName, objectKey);
generatePresignedUrlRequest.setMethod(HttpMethod.PUT);
generatePresignedUrlRequest.setExpiration(expiration);

URL url = s3client.generatePresignedUrl(generatePresignedUrlRequest);

// Use the pre-signed URL to upload an object.


然后,我将url交给某人,如果某人将某物上载到该url,则该http://example.com/upload将被上载文件中的数据调用。

最佳答案

您可以使用S3 event notifications生成通知。查看ObjectCreated事件。可以使用S3前缀过滤通知。 (链接页面上的AWS文档中有示例。)

07-26 01:12