AWS S3按对象创建/修改日期降序NodeJs列出所有对象

时间:2019-04-13 15:42:49

标签: node.js amazon-web-services amazon-s3

我正在使用NodeJ来按创建/修改的对象日期降序列出S3存储桶中的对象,但没有找到任何传递降序选项的选项

// Load the AWS SDK for Node.js
var AWS = require('aws-sdk');
// Set the region 
AWS.config.update({region: 'REGION'});

// Create S3 service object
s3 = new AWS.S3({apiVersion: '2006-03-01'});

// Create the parameters for calling listObjects
var bucketParams = {
 Bucket : 'BUCKET_NAME',
};

// Call S3 to obtain a list of the objects in the bucket
s3.listObjects(bucketParams, function(err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
});

1 个答案:

答案 0 :(得分:0)

对于每个Amazon docs,列表将按字典顺序返回UTF-8字符编码的对象,并且无法要求结果以其他排序方式返回。

您必须自己对结果进行排序:

s3.listObjects(bucketParams, function(err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", JSON.stringify(data.Contents.sort(o => o.Key)); // example
  }
});