调用AWS createPresignedPost方法上传文件时返回凭证错误
解决方法:需要检查使用的AWSCredentials是否正确,并且确保在创建AWS S3客户端时也传递了正确的AWSCredentialsProvider。
示例代码:
BasicAWSCredentials credentials = new BasicAWSCredentials("accessKeyId", "secretAccessKey");
AmazonS3 s3client = AmazonS3ClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(credentials))
.withRegion(Regions.US_EAST_1)
.build();
GeneratePresignedUrlRequest request = new GeneratePresignedUrlRequest(bucketName, objectKey);
PresignedUrlUploadRequest uploadRequest = new PresignedUrlUploadRequest(request);
try {
PresignedUrlUploadResult uploadResult = s3client.presign(uploadRequest);
// 文件上传成功
} catch (AmazonS3Exception e) {
// 处理异常
}