使用 NodeJS 回调上传到 S3 Bucket 必须是一个函数。收到未定义
Uploading to S3 Bucket with NodeJS Callback must be a function. Received undefined
尝试上传到 NodeJS 中的 S3 存储桶,但我不断收到此错误:
##[error]Callback must be a function. Received undefined
##[error]Node run failed with exit code 1
这是我执行上传的脚本:
var AWS = require('aws-sdk');
const s3 = new AWS.S3({apiVersion: '2006-03-01', accessKeyId: AWS_SECRET_ID, secretAccessKey:AWS_SECRET_KEY, region:AWS_REGION });
var body = fs.open(`./${package}`);
const params = {
Body: body,
Bucket: bucketName
};
s3.upload(params, function(err, data){
if(err){
console.log(`Failed upload to ${bucketName}`);
throw err;
} else {
console.log(`Succesful upload to ${bucketName}`);
}
});
我在这里很困惑,因为我在上传时有回调?其中很多只是从 AWS 示例中复制和粘贴的。
fs.open()
接受一个参数,callback
。这可能是错误的来源。
该函数为异步函数,返回数据需要回调函数处理。
你会想做:
fs.open(`./${package}`, (err, data) => {
// Implement callback here
});
尝试上传到 NodeJS 中的 S3 存储桶,但我不断收到此错误:
##[error]Callback must be a function. Received undefined
##[error]Node run failed with exit code 1
这是我执行上传的脚本:
var AWS = require('aws-sdk');
const s3 = new AWS.S3({apiVersion: '2006-03-01', accessKeyId: AWS_SECRET_ID, secretAccessKey:AWS_SECRET_KEY, region:AWS_REGION });
var body = fs.open(`./${package}`);
const params = {
Body: body,
Bucket: bucketName
};
s3.upload(params, function(err, data){
if(err){
console.log(`Failed upload to ${bucketName}`);
throw err;
} else {
console.log(`Succesful upload to ${bucketName}`);
}
});
我在这里很困惑,因为我在上传时有回调?其中很多只是从 AWS 示例中复制和粘贴的。
fs.open()
接受一个参数,callback
。这可能是错误的来源。
该函数为异步函数,返回数据需要回调函数处理。
你会想做:
fs.open(`./${package}`, (err, data) => {
// Implement callback here
});