是否有任何适用于Node.js的Amazon S3客户端库,允许列出S3存储桶中的所有文件?
最著名的aws2js和knox似乎没有此功能。
实际上,aws2js支持通过s3.get()方法调用以较低级别列出存储桶中的对象。为此,必须传递prefix在Amazon S3 REST API页面上记录的参数:
s3.get()
prefix
var s3 = require('aws2js').load('s3', awsAccessKeyId, awsSecretAccessKey); s3.setBucket(bucketName); var folder = encodeURI('some/path/to/S3/folder'); var url = '?prefix=' + folder; s3.get(url, 'xml', function (error, data) { console.log(error); console.log(data); });
data上面片段中的变量包含bucketName存储桶中所有对象的列表。
data
bucketName