2016-04-28 10 views
0

AmazonS3ClientにはdoesObjectExist(String bucketName, String objectName)というメソッドがあります。暗号化されたオブジェクトに対してこのメ​​ソッドを呼び出す場合、このメソッドはcom.amazonaws.services.s3.model.AmazonS3Exception: Bad Request (Service: Amazon S3; Status Code: 400; Error Code: 400 Bad Request;をスローします。保存時に使用された暗号化キーを知らなくても、オブジェクトが存在するかどうかを確認する他の方法はありますか?私は暗号化キーを持たずにオブジェクトにアクセスしたくないので、 'blabla'という名前のオブジェクトが存在するかどうかを知りたいので、 'blabla'というオブジェクトをアップロードするクライアントにエラーメッセージを表示することができます。オブジェクトが存在するかどうかのAWS SDKチェック

答えて

2

バケット内のすべての要素をリストし、オブジェクトが存在するかどうかを確認できます。さらに良いwithPrefix方法で返されたオブジェクトについての詳細を知るためにあなたがまたgetObjectSummaries()方法で見ることができ、応答

http://docs.aws.amazon.com/AmazonS3/latest/dev/ListingObjectKeysUsingJava.html

ListObjectsRequest listObjectsRequest = new ListObjectsRequest() 
.withBucketName(bucketName) 
.withPrefix("blabla"); 

を制限することができます

関連する問題