12
votes

Vérifiez si une clé avec un certain préfixe existe dans le godet Amazon S3

Comment vérifierais-je s'il y a une clé qui commence par un préfixe particulier, similaire à "dossiers"?


3 Réponses :


5
votes

Les docs disent qu'il est possible de spécifier un PREFIX Paramètre Lorsque vous demandez une liste de clés dans un seau. Vous pouvez définir le paramètre MAX-KEYS sur 1 pour la vitesse. Si la liste est non vide, vous savez que le préfixe existe.

outils comme Le seau de Boto .List () fonction expose le préfixe et la pagination aussi.


0 commentaires

2
votes

Pour itérer sur tous les fichiers S3 de votre godet qui commencent par "Certains / préfixes /" dans Ruby, procédez comme suit à l'aide du GEM AWS-SDK:

AWS.config :access_key_id => "foo", :secret_access_key => "bar"
s3 = AWS::S3.new
s3.buckets['com.mydomain.mybucket'].objects.with_prefix('some/prefix/').each do |object|
    # Do something with object (an S3 object)
end


1 commentaires

Merci, c'est exactement ce que je cherchais!



1
votes

Obligatoire: AWS-JAVA-SDK CODE> JAR

credentials = new BasicAWSCredentials(accessKey, secretKey);
config = new ClientConfiguration();
client = new AmazonS3Client(credentials, config );
client.doesBucketExist(bucketName+"/prefix");


0 commentaires