Добавить папку в Amazon S3 Bucket - PullRequest
29 голосов
/ 22 июля 2011

Я хочу добавить папку в мое хранилище amazon s3, используя кодирование.Подскажите, пожалуйста, как этого добиться?

Ответы [ 14 ]

0 голосов
/ 06 апреля 2018

для того, чтобы создать каталог внутри корзины s3 и скопировать содержимое внутри, что довольно просто.

Команда S3 может использоваться: aws s3 cp abc / def.txt s3: // mybucket / abc /

Примечание: / is должен создать каталог, иначе он станет файлом в s3.

0 голосов
/ 21 ноября 2017

Ниже создается пустой каталог с именем "mydir1".

Ниже приведен код nodejs, он должен быть похож на другие языки.

Хитрость заключается в том, чтобы в конце имени объекта была косая черта (/), как в «mydir1 /», в противном случае будет создан файл с именем «mydir1».

let AWS = require('aws-sdk');
AWS.config.loadFromPath(__dirname + '\\my-aws-config.json');
let s3 = new AWS.S3();

var params = {
    Bucket: "mybucket1",
    Key: "mydir1/",
    ServerSideEncryption: "AES256" };

s3.putObject(params, function (err, data) {
    if (err) {
        console.log(err, err.stack); // an error occurred
        return;
    } else {
        console.log(data);           // successful response
        return;
        /*
         data = {
         ETag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
         ServerSideEncryption: "AES256",
         VersionId: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt"
         }
         */
    } });

Источник: http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#putObject-property

0 голосов
/ 17 февраля 2017

В swift 2.2 вы можете создать папку, используя

func createFolderWith(Name: String!) {
    let folderRequest: AWSS3PutObjectRequest = AWSS3PutObjectRequest()
    folderRequest.key = Name + "/"
    folderRequest.bucket = "Your Bucket Name"
    AWSS3.defaultS3().putObject(folderRequest).continueWithBlock({ (task) -> AnyObject? in
        if task.error != nil {
            assertionFailure("* * * error: \(task.error?.localizedDescription)")
        } else {
            print("created \(Name) folder")
        }
        return nil
    })
}
0 голосов
/ 05 марта 2016

Вы можете выбрать язык по вашему выбору из доступных AWS SDK

В качестве альтернативы вы можете попробовать клиентские библиотеки minio, доступные в Python , Go , .Net , Java , Javascript для вашей среды разработки приложений, в ней есть пример каталога со всеми перечисленными основными операциями.

Отказ от ответственности: я работаю на Minio

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...