簡體   English   中英

如何從Java中的bucket.s3.amazonaws.com/key更改s3.amazonaws.com/bucket/key之類的Amazon S3文件URL?

[英]How to Change Amazon S3 file URL Like s3.amazonaws.com/bucket/key from bucket.s3.amazonaws.com/key in Java?

使用AmazonS3存儲桶-將文件上傳到存儲桶后,我們可以使用以下代碼獲取上傳的文件URL:

String fileDownloadUrl = AmzonS3Client.getUrl(bucketName, fileName);

在結果中,它將給出網址,例如:bucket.s3.amazonaws.com/key,但是我想要s3.amazonaws.com/bucket/key。 那么有人可以幫助我如何在Java中解決這個問題嗎?

默認情況下,pathstyleaccess為false,因此您上載的文件應為bucket.s3.amazonaws.com/key,但是當您將clientOptions-pathStyleAccess顯式添加為true時,它將生成類似s3.amazonaws.com/bucket/key的URL。 請在下面找到代碼片段

S3ClientOptions clientOptions = new S3ClientOptions(); clientOptions.setPathStyleAccess(真);

並將此clientOptions設置為Amazons3client。

另一個解決方案:

使用AmazonS3ClientBuilderenablePathStyleAccess()創建AmazonS3Client對象。

AmazonS3 client = AmazonS3ClientBuilder.standard()
        .enablePathStyleAccess()
        .withRegion(regionName)
        .withCredentials(new AWSStaticCredentialsProvider(credentials))
        .build();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM