모든 업로드하면 URL이 AWS에
File mFile = new File(mUri.toString().trim());
AmazonS3Client s3Client = new AmazonS3Client( Ut.getCredentialsCognito(context));
PutObjectRequest por = new PutObjectRequest(bucketName, fileNameIncludingSubFolders, mFile);
por.setProgressListener(new ProgressListener() {
@Override
public void progressChanged(ProgressEvent prgEvent) {
if (progressUpdate != null) {
progressUpdate.progressStatus(String.valueOf(prgEvent.getBytesTransferred()));
}
}
});
액세스 모드를 업로드 파일 클래스 폴더의 유틸리티에서
String bucketName = Util.getBucketNameFromUrl(uploadPath);
String fileNameIncludingSubFolders = localPath.substring(localPath.lastIndexOf("/")+1);
Uri mUri = Uri.parse(localPath);
점점
버킷 이름은 개인이다 괜찮습니다. 업로드가 잘 작동합니다.
필요한 것은 서명 된 URL을 생성하는 것입니다.
AWS SDK GeneratePresignedUrlRequest
을 사용하십시오. 이 클래스에는 여러 가지 방법이 있으며 링크 및 기타 항목의 만료 날짜를 설정할 수도 있습니다.
AWSCredentials awsCredentials = new BasicAWSCredentials("ACCESS_KEY_ID", "SECRET_KEY_ID");
AmazonS3 s3client = new AmazonS3Client(awsCredentials);
GeneratePresignedUrlRequest request = new GeneratePresignedUrlRequest(bucketName, fileKey);
URL objectURL = s3client.generatePresignedUrl(request);
당신은 다음과 같은 파일 키와 키 이름을 찾을 수 있습니다
:
https://s3-[region]..amazonaws.com/[bucket name]/[file key]
오류가 무엇을보고있는 것입니까? –