我正在尝试使用我的Android应用程序简单地将文件上传到S3存储桶。我已经尝试了他们所说的所有内容,做了所有示例,并使用了第三方库。没用。运行此代码时,我不断收到“访问被拒绝”错误:

       AmazonS3Client s3Client = new AmazonS3Client( new BasicAWSCredentials("MY KEY", "MY SECRET" ) );
        s3Client.createBucket("evenatir");
        PutObjectRequest por = new PutObjectRequest("BUCKETNAME", "VIDEONAME", new java.io.File("/storage/emulated/0/Movies/outterlimits20.mp4") );
        s3Client.putObject( por );


它在createBucket()处返回此错误消息;方法:

     Caused by: com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: F2871EBB4091D6D9), S3 Extended Request ID: gqR4PhULERMiGxVTbzzC71mDoeKZxyRu9mLYMcF+wPaFN8KT6VrqyU+k6i7/Pee0


我还使用了Android simpl3r library,实际上令我惊讶的是,它克服了Access Denied错误,但是,当然,还有一些XML格式不正确的错误,AWS尚未对此进行任何处理。我完全被卡住了,我只想将文件上传到我的S3存储桶中!

最佳答案

在上传任何文件之前,请确保已经创建了要传递的存储桶名称。

AWS不会引发未找到存储桶的异常,而是会引发访问被拒绝的异常。

希望这会帮助你。

07-25 22:05