comment puis-je créer un dossier sous un seau en utilisant la bibliothèque boto pour amazon s3, j'ai suivi le manuel, et créer des clés avec du contenu avec permission, métadonnées, etc., mais aucun endroit dans la documentation de boto ne dit comment créer des dossiers sous seau ou créer un dossier sous les dossiers dans le seau.
Réponses
Trop de publicités?Il n'y a pas de concept de dossiers ou de répertoires dans S3. Vous pouvez créer des noms de fichier tels que "abc / xys / uvw / 123.jpg", que de nombreux outils d'accès S3, tels que S3Fox, affichent comme une structure de répertoires, mais il ne s'agit en réalité que d'un fichier unique dans un compartiment.
Avec AWS SDK .Net fonctionne parfaitement, ajoutez simplement "/" à la fin de la chaîne du nom du dossier:
var folderKey = folderName + "/"; //end the folder name with "/"
AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client(AWSAccessKey, AWSSecretKey);
var request = new PutObjectRequest();
request.WithBucketName(AWSBucket);
request.WithKey(folderKey);
request.WithContentBody(string.Empty);
S3Response response = client.PutObject(request);
Puis actualisez votre console AWS, et vous verrez le dossier
S3 n'a pas de structure de dossier, mais il existe quelque chose appelé clé.
Nous pouvons créer /2013/11/xyz.xls
et seront affichés sous forme de dossier dans la console. Mais la partie stockage de S3 prendra cela comme nom de fichier.
Même lors de la récupération, nous observons que nous pouvons voir les fichiers dans un dossier particulier (ou des clés) en utilisant la méthode ListObjects
et en utilisant le paramètre Prefix
.