Node.js 如何在Node JS中设置AWS s3 bucket版本控制?

Node.js 如何在Node JS中设置AWS s3 bucket版本控制?,node.js,amazon-s3,Node.js,Amazon S3,我使用下面的代码来设置bucket版本控制,但它给了我一个错误。如何在Node JS中设置AWS s3 bucket版本控制 检验 let params = { Bucket:"home", ACL:"public-read-write", VersioningConfiguration: { MFADelete: "Disabled", Status: "Enabled" } } let callBack =

我使用下面的代码来设置bucket版本控制,但它给了我一个错误。如何在Node JS中设置AWS s3 bucket版本控制

检验

let params = {
    Bucket:"home",
    ACL:"public-read-write", 
    VersioningConfiguration: {
        MFADelete: "Disabled", 
        Status: "Enabled"
       }
    }

let callBack = (err,data)=>{
    if(err){
        console.log("--------- Home Bucket Creation Fail --------",err);
        callCreateBucket()
        // setTimeout(()=>{
        //     callCreateBucket()
        // },3000)
    }
    else 
        console.log("--------- Home Bucket Created with version setup --------",data);
}

function callCreateBucket(){
    console.log("---------callCreateBucket --------");
    createBucket (params , callBack)
}
function createBucket (param ,cb ){
    console.log("---------createBucket --------");
    setTimeout(()=>{
        s3.createBucket(param,cb); 
    },10000)

}

callCreateBucket()

在这种情况下,我会避免使用setTimetout函数。最好使用以下代码模板:


首先,您需要使用创建一个bucket,然后使用为您的bucket启用版本控制。

会出现什么错误?
// Load the SDK for JavaScript
var AWS = require('aws-sdk');
// Set the region 
AWS.config.update({region: 'REGION'});

// Create the parameters for calling createBucket
var bucketParams = {
   Bucket : process.argv[2]
};            

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

// Call S3 to create the bucket
s3.createBucket(bucketParams, function(err, data) {
   if (err) {
      console.log("Error", err);
   } else {
      console.log("Success", data.Location);
   }
});