2015-05-20 2 views

ответ

0

Один из способов получить список файлов из ведра в Amazon S3 с помощью aws-sdk для java. ниже приведен пример этого. Чтобы получить пропущенные пропуски, теперь есть расширенные методы, показанные ниже, не являются безопасными.

AWSCredentials credentials = new BasicAWSCredentials(accessKeyId,secretAccessKey); 
AmazonS3 s3Client = new AmazonS3Client(credentials); 
String bucket = prop.getProperty("bucket"); 
String directory = prop.getProperty("directory"); 
ListObjectsRequest lor = new ListObjectsRequest().withBucketName(bucket).withPrefix(directory); 

ObjectListing objects = s3Client.listObjects(lor); 

Затем используйте класс S3ObjectSummary для итерации объектов и списка файлов.

Надеюсь, это поможет!

+0

Жаль, что я использую Javascript для этого метка [meteor], btw, где вы получили эту информацию API? не могли бы вы предоставить ссылку? –

+0

Мне тоже жаль .. Я думал, что вы имеете в виду другой способ листинга файлов, поэтому я понял как еще одну технологию. Amazon предоставляет отличную документацию http://aws.amazon.com/sdk-for-java/ об aws-sdk. – Ilango

1

Вот как я это делаю:

Используйте очень популярный AWS SDK пакет: https://atmospherejs.com/peerlibrary/aws-sdk

Затем фрагмент кода (на сервере) будет выглядеть следующим образом:

AWS.config.update({ 
    accessKeyId: '<accessKey>', 
    secretAccessKey: '<secretKey>' 
}); 

s3 = new AWS.S3({ 
    region: 'us-west-2' 
}); 

var params = { 
    Bucket: 'bucketName' 
}; 

s3.listObjects(params, Meteor.bindEnvironment(function (err, data) { 

    //DO STUFF HERE 

})); 

надеюсь, что это полезно , если у вас есть проблемы, просто кричите!

+0

Привет, спасибо, я посмотрю –

+0

John, есть ли способ настроить использование ролей IAM? Я бы хотел избежать того, чтобы ключ/секрет доступа на сервере или в коде вообще ... aws-sdk run from nodejs правильно использует роли. Однако, когда он включен в библиотеку сверстников, он игнорирует роль и нуждается в accessKey/secret. Любые отзывы оцениваются. –

+0

Хм, боюсь, я не знаю ответа на эту Волю. Я всегда добавлял ключи AWS на сервер. –

Смежные вопросы