Используя nodejs и knox, как мне увидеть файлы в S3 Bucket? - PullRequest
1 голос
/ 29 сентября 2011

Я загружаю файлы различными способами в мое ведро s3.

В python я могу использовать boto следующим образом:

from boto.s3.connection import S3Connection

conn = S3Connection('access-key','secret-access-key')
bucket = conn.get_bucket('bucket')
for key in bucket.list():
    print key.name

В узле я использовал knox для подключения к корзинам вполучить URL-адреса, но как я могу перебрать ключи в узле, чтобы увидеть все файлы в моем сегменте?

Ответы [ 2 ]

3 голосов
/ 15 октября 2012

Если ваши ведра становятся большими, лучше всего поток этих ключей! Проверить knox-copy :

var knoxCopy = require('knox-copy');

var client = knoxCopy.createClient({
  key: '<api-key-here>',
  secret: '<secret-here>',
  bucket: 'mrbucket'
});

client.streamKeys({
  // omit the prefix to list the whole bucket
  prefix: 'buckets/of/fun' 
}).on('data', function(key) {
  console.log(key);
});
2 голосов
/ 07 мая 2012

Вы можете сделать это с AwsSum. Он активно поддерживается и может выполнять ВСЕ операции S3, предоставляемые Amazon.

Существует полнофункциональный пример того, что вы ищете в репозитории node-awssum-scripts. Он получает первые 1000 ключей, затем продолжает выполнять новые запросы, используя параметр маркер для операции, пока не останется больше ключей, поэтому вы можете посмотреть на это:

Если вам нужна помощь, напишите мне на GitHub. Отказ от ответственности: я chilts, автор Awssum. :)

...