Я пытаюсь загрузить файлы в свою корзину S3 из моего приложения Node.js, поэтому я следую очень простым руководствам, например этому .
Код довольно прост:
const AWS = require("aws-sdk"); // fresh install, version : ^2.697.0
AWS.config.update({ // Credentials are OK
accessKeyId: process.env.s3_accessKeyId,
secretAccessKey: process.env.s3_secretAccessKey,
region: 'eu-central-1'
});
const s3 = new AWS.S3();
let params = {
// (some upload params, file name, bucket name etc)
};
s3.upload(params); // <-- crash with error: "s3.upload is not a function"
Я взглянул на официальную AWS документацию и s3.upload()
кажется, это вещь. Понятия не имею, почему я получаю ошибку.
Если я console.log(s3.upload)
получаю undefined
.
Node.js v13.11.0.
EDIT
В итоге я использовал s3.putObject()
, который делает почти то же самое, что и s3.upload()
, и работает, в то время как последний все еще необъяснимо неопределен ...
console.log(`typeof s3.upload = `);
console.log(typeof s3.upload); // undefined?? WHY
console.log(`typeof s3.putObject = `);
console.log(typeof s3.putObject); // function, and works