2011-09-29 56 views
1

我以許多不同的方式將文件上傳到我的s3存儲桶。使用nodejs和knox如何查看S3存儲桶中的文件

在Python中我可以使用博託這樣的:

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 

在節點我已經使用諾克斯連接到水桶拿到的網址,但我怎麼可能通過節點的關鍵迭代看到所有的文件我桶?

+0

不要以爲你可以只用諾克斯。 http://stackoverflow.com/questions/7459122/updating-headers-of-every-file-in-an-amazon-s3-bucket/7480490#7480490 –

+0

我的回答低於你的需要? AwsSum可以遍歷桶中的對象。 – chilts

+0

如果我在下面給出的答案沒有問題,請將其標記爲正確。 – chilts

回答

2

你可以用AwsSum做到這一點。它被積極維護並可以執行亞馬遜提供的所有S3操作。

有一個全功能的例子你在節點awssum的腳本回購尋找什麼。它獲得的第1000項,然後保存,直到有沒有更多的按鍵做用「標記」參數來運行的新的要求,所以你可能想看看是:

如果您需要任何幫助,請在GitHub上留言。免責聲明:我是童謠,Awssum的作者。 :)

+0

謝謝!這正是我所期待的。 – kkaehler

+0

想知道第二個環節現在在哪裏? – thomallen

3

如果你的水桶變大,最好stream那些鑰匙!退房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); 
}); 
相關問題