AWS图像上传表单数据到S3时数据损坏。
创始人
2024-09-27 17:00:35
0

这个问题通常是由于异步文件传输导致的。为了避免文件传输被破坏,您可以使用 AWS S3 Transfer Acceleration 或进行流式传输。以下是一个使用 Express 和 multer-s3 的示例代码,实现了流式上传到 S3 :

const express = require('express');
const multer = require('multer');
const AWS = require('aws-sdk');
const multerS3 = require('multer-s3');

const app = express();

const s3 = new AWS.S3({
  accessKeyId: YOUR_ACCESS_KEY_ID,
  secretAccessKey: YOUR_SECRET_ACCESS_KEY,
});

const upload = multer({
  storage: multerS3({
    s3,
    bucket: YOUR_BUCKET_NAME,
    contentType: multerS3.AUTO_CONTENT_TYPE,
    acl: 'public-read',
    key(req, file, cb) {
      cb(null, `folder-name/${Date.now().toString()}-${file.originalname}`);
    },
  }),
});

app.post('/upload', upload.single('file'), (req, res) => {
  res.send('File uploaded successfully');
});

app.listen(3000, () => {
  console.log('Server started');
});

在这个示例代码中,我们将文件流式上传到 S3 ,并生成唯一的文件名。我们使用了 multer-s3 库来实现上传,该库支持多云服务商,包括 AWS S3 。如果您想使用 AWS S3 辅助传输,请将 multerS3 对象中的 accelerate 属性设置为 true

最后,记得使用正确的 AWS 凭证访问您的桶,以便您的应用程序可以成功上传文件。

相关内容

热门资讯

5分钟机巧!德州透视插件(透视... 5分钟机巧!德州透视插件(透视)总是真的是有辅助辅助(哔哩哔哩)1、点击下载安装,德州透视插件脚本分...
4分钟技法!aapoker怎么... 4分钟技法!aapoker怎么开辅助器(透视)其实真的是有辅助脚本(哔哩哔哩)aapoker怎么开辅...
2分钟大纲!wepoker怎么... 2分钟大纲!wepoker怎么发冤家牌(透视)一贯是真的有辅助神器(哔哩哔哩)1、wepoker怎么...
第十分钟技法!wepoker私... 第十分钟技法!wepoker私人局怎么玩(透视)竟然真的是有辅助辅助(哔哩哔哩)1)wepoker私...
第十分钟方式!哈糖大菠萝开挂(... 第十分钟方式!哈糖大菠萝开挂(透视)其实存在有辅助工具(哔哩哔哩)1、实时哈糖大菠萝开挂透视辅助更新...
三分钟机巧!wepoker科技... 三分钟机巧!wepoker科技辅助器(透视)果然有辅助安装(哔哩哔哩)1、上手简单,内置详细流程视频...
8分钟技法!wepoker辅助... 8分钟技法!wepoker辅助插件功能(透视)切实有辅助透视(哔哩哔哩)wepoker辅助插件功能辅...
第4分钟手段!wepoker好... 第4分钟手段!wepoker好友局透视(透视)都是有辅助开挂(哔哩哔哩)1、下载好wepoker好友...
2分钟要领!wpk透视辅助方法... 2分钟要领!wpk透视辅助方法(透视)一直有辅助教程(哔哩哔哩)1、金币登录送、破产送、升级送、活动...
第一分钟模块!wepoker透... 第一分钟模块!wepoker透视底牌脚本(透视)切实真的是有辅助辅助(哔哩哔哩)一、wepoker透...