Node.js &Amazon S3:如何遍历存储桶中的所有文件? [英] Node.js & Amazon S3: How to iterate through all files in a bucket?

查看:17
本文介绍了Node.js &Amazon S3:如何遍历存储桶中的所有文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有任何适用于 Node.js 的 Amazon S3 客户端库允许列出 S3 存储桶中的所有文件?

Is there any Amazon S3 client library for Node.js that allows listing of all files in S3 bucket?

最著名的aws2jsknox 似乎没有这个功能.

The most known aws2js and knox don't seem to have this functionality.

推荐答案

事实上 aws2js 支持在桶上列出对象通过 s3.get() 方法调用的低级别.要做到这一点,必须传递 prefix 参数,该参数记录在 Amazon S3 REST API 上页面:

In fact aws2js supports listing of objects in a bucket on a low level via s3.get() method call. To do it one has to pass prefix parameter which is documented on Amazon S3 REST API page:

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 存储桶中所有对象的列表.

The data variable in the above snippet contains a list of all objects in the bucketName bucket.

这篇关于Node.js &Amazon S3:如何遍历存储桶中的所有文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆