使用 java spring boot 应用程序从云前端等 cdn 服务器下载媒体

问题描述 投票:0回答:0

我们如何使用 java spring boot 从 cdn 服务器(云端)获取媒体文件

我正在使用 s3 存储桶来存储所有媒体。

这是我从 s3 存储桶生成 signedUrl 的代码。我们已经为这个 s3 存储桶创建了云端分发。那么我们如何从云端生成 signedUrl。

@Service
public class FileServiceImpl implements FileService{

    @Autowired
    private AmazonS3 amazonS3;
    
    @Value("${aws.s3.bucket-name}")
    private String bucketName;
    
    @Override
    public String generatePreSignedUrlForFileDownload(String fileKey) {
        if (fileKey == null || fileKey.isEmpty()) {
            throw new AppException(AppConstants.ErrorType.PATH_NULL_FOR_FILE,
                    AppConstants.ErrorCodes.PATH_NULL_FOR_FILE_ERROR_CODE,
                    AppConstants.ErrorMessage.PATH_NULL_FOR_FILE_ERROR_MESSAGE);
        }
        GeneratePresignedUrlRequest presignedUrlRequest = new GeneratePresignedUrlRequest(bucketName, fileKey)
                .withMethod(HttpMethod.GET);
        URL presignedUrl = amazonS3.generatePresignedUrl(presignedUrlRequest);
        return presignedUrl.toString();
        
    }
java spring-boot amazon-s3 amazon-dynamodb amazon-cloudfront
© www.soinside.com 2019 - 2024. All rights reserved.