Mettre objet à S3 en utilisant java mais ne voit pas d'objet à partir de la console

Laodao:

J'ai essayé le code suivant pour mettre une chaîne dans la S3. J'ai vu le dossier a été créé sous le seau, mais n'a pas vu un objet dans le dossier. Qu'est-ce que je rate?

            String SUFIX = "/";

            try {
                s3client.putObject(bucketName, today.toString() + SUFFIX + source + SUFFIX, "abc");
            } catch (Exception e) {
                e.printStackTrace();
            }

Je ne pense pas que ce soit un problème d'autorisation, parce que j'ai les dossiers créés par le code ci-dessus et il n'y a pas d'exception interceptée par la try-catch aussi. aide s'il vous plaît. Merci

Type au hasard :

De la documentation d'Amazon S3 :

La traite console Amazon S3 tous les objets qui ont une barre oblique ( en avant le /caractère) que le dernier caractère (fin) au nom de la clé comme un dossier, par exemple examplekeyname/. Vous ne pouvez pas télécharger un objet qui a un nom de clé avec un arrière /personnage en utilisant la console Amazon S3.

Cependant, vous pouvez télécharger des objets qui sont nommés avec un arrière /avec l'API Amazon S3 en utilisant l'AWS CLI, AWS SDK ou API REST.

Un objet qui est nommé avec une fuite « / » apparaît comme un dossier dans la console Amazon S3.

Donc, dans votre cas, la suppression slash doit faire le travail:

String SUFIX = "/";
try {
    s3client.putObject(bucketName, today.toString() + SUFFIX + source, "abc");
} catch (Exception e) {
    e.printStackTrace();
}

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=339218&siteId=1
conseillé
Classement