AWSLambda如何一次性上传多张图片对象?
创始人
2024-09-26 07:30:37
0

可以使用AWS SDK for Node.js的s3.putObjects方法一次性上传多个对象。以下是一个简单的示例:

const AWS = require('aws-sdk');
const s3 = new AWS.S3();

exports.handler = (event, context, callback) => {
  const bucketName = 'my-bucket';
  const fileNames = ['image1.jpg', 'image2.jpg', 'image3.jpg'];
  const files = []; // files to be uploaded
  const params = { Bucket: bucketName };

  // read all files to be uploaded
  fileNames.forEach((fileName) => {
    const file = {
      path: `/path/to/images/${fileName}`,
      name: fileName,
      type: 'image/jpeg',
    };
    files.push(file);
  });

  // set params for putObjects method
  params['Body'] = files.map((file) => {
    return { Key: file.name, Body: fs.readFileSync(file.path), ContentType: file.type };
  });
  params['ContentType'] = 'application/json';

  // upload files to S3
  s3.putObjects(params, (err, data) => {
    if (err) {
      console.error(err);
      callback('Error', err);
    } else {
      console.log(data);
      callback(null, 'Success');
    }
  });
};

在上述代码中,我们首先定义了要上传到S3的文件名,然后使用fs模块和map方法读取所有文件的二进制数据,并将其映射为key-value对象,其中key是文件名,value是文件的二进制数据。然后将映射后的对象传递给putObjects方法的Body参数中进行上传。最后,回调函数通过参数callback返回成功或失败的消息。

相关内容

热门资讯

关于!微信微乐自建房辅助工具,... 关于!微信微乐自建房辅助工具,微乐家乡麻将自建房辅助app(开挂自建房)方法1)微乐家乡麻将自建房辅...
大家学习交流!微信卡五星辅助器... 大家学习交流!微信卡五星辅助器,微乐小程序免费黑科技(开挂自建房)方法1、很好的工具软件,可以解锁游...
三分钟了解!微乐微信自建房辅助... 三分钟了解!微乐微信自建房辅助工具插件,微乐家乡麻将自建房辅助app(开挂自建房)工具1、三分钟了解...
一分钟教会你!微乐家乡麻将自建... 一分钟教会你!微乐家乡麻将自建房辅助app,微乐自建房脚本免费入口(开挂自建房)方法1、用户打开应用...
分享实测!微信微乐自建房辅助工... 分享实测!微信微乐自建房辅助工具,微乐自建房脚本免费入口(开挂自建房)器1、起透看视 微信微乐自建房...
重大通报!微乐自建房辅助工具脚... 重大通报!微乐自建房辅助工具脚本,微乐小程序免费黑科技(开挂自建房)app微乐自建房辅助工具脚本破解...
如何分辨真伪!微乐微信自建房辅... 如何分辨真伪!微乐微信自建房辅助工具插件,微乐小程序免费黑科技(开挂自建房)技巧1、微乐微信自建房辅...
我来教教你!微乐自建房辅助工具... 我来教教你!微乐自建房辅助工具挂,微乐家乡麻将自建房辅助app(开挂自建房)工具1、玩家可以在微乐家...
重大来袭!微乐自建房辅助工具神... 重大来袭!微乐自建房辅助工具神器,微乐小程序免费黑科技(开挂自建房)器1、游戏颠覆性的策略玩法,独创...
带你了解!微信卡五星辅助器,微... 带你了解!微信卡五星辅助器,微乐自建房脚本免费入口(开挂自建房)方法1、带你了解!微信卡五星辅助器,...