我正在尝试将文件从java类上传到aws S3。
我正在使用给定here
的确切代码我改变的唯一部分是:
private static String bucketName = "s3-us-west-2.amazonaws.com/<my-bubket-name>";
private static String keyName = "*** Provide key ***";
private static String uploadFileName = "/home/...<localpath>.../test123";
我不确定在提供密钥中添加什么。但即使我这样离开,我也会收到这样的错误:
错误消息:存储桶位于以下区域:null。请使用此区域重试请求(服务:Amazon S3;状态代码:301;错误代码:PermanentRedirect;请求ID:*******) HTTP状态代码:301 AWS错误代码:PermanentRedirect 错误类型:客户端
答案 0 :(得分:2)
而不是<my-bucket-name>
你应该放{{1}}。
答案 1 :(得分:0)
您需要指定存储桶的名称。 KeyName是您想要存储文件的指定存储桶中的位置。它应该是这样的:
private static String bucketName = "xyz";// xyz is my bucket name at s3
private static String keyName = "upload/test/";// this is location where
//file will be stored
private static String uploadFileName = "/home/...<localpath>.../test123";
答案 2 :(得分:0)
确保您使用了正确的区域。
将区域从us-west-2
更改为us-east-1
对我来说很有效。