使用Amazon S3 SDK的GetObjectRequest中的ResponseHeaderOverrides属性来设置链接的过期时间。
示例代码:
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.Headers;
import com.amazonaws.services.s3.model.GetObjectRequest;
public class S3LinkExpireExample {
private static final long EXPIRATION_TIME = 3600; // Link will expire in 1 hour
public static void main(String[] args) {
AmazonS3 s3Client = new AmazonS3Client();
String bucketName = "myBucket";
String keyName = "myObjectKey";
GetObjectRequest request = new GetObjectRequest(bucketName, keyName);
request.setResponseHeaders(Headers.EXPIRES, "" + System.currentTimeMillis() / 1000 + EXPIRATION_TIME);
// Now use the request object as before
// ...
}
}