使用 AWS S3 签名上传文件 url 始终设置内容类型 binary/octet-stream
Upload file with AWS S3 signed url always setting content-type binary/octet-stream
我遇到了一个问题,内容类型在上传过程中总是发生变化。我正在使用 lambda 和 nodejs 生成 URL。这是我的代码。我将不胜感激任何帮助!
您生成 Signed URL 的代码工作正常。问题似乎出在文件的实际上传上。试试这些选项,让我们看看您是否会得到更好的结果:
在邮递员中使用二进制选项而不是表单数据
form-data 增加了很多附加值
创建一个 nodejs 文件并使用此代码进行测试
const axios = require('axios');
const fs = require('fs');
(async () => {
const file = fs.readFileSync('./download.mp4');
await axios.put(signedUrl, {
data: file,
}, {
headers: {
'Content-Type': 'video/mp4'
}
});
})();
我得到的结果:
我遇到了一个问题,内容类型在上传过程中总是发生变化。我正在使用 lambda 和 nodejs 生成 URL。这是我的代码。我将不胜感激任何帮助!
您生成 Signed URL 的代码工作正常。问题似乎出在文件的实际上传上。试试这些选项,让我们看看您是否会得到更好的结果:
在邮递员中使用二进制选项而不是表单数据
form-data 增加了很多附加值
创建一个 nodejs 文件并使用此代码进行测试
const axios = require('axios'); const fs = require('fs'); (async () => { const file = fs.readFileSync('./download.mp4'); await axios.put(signedUrl, { data: file, }, { headers: { 'Content-Type': 'video/mp4' } }); })();
我得到的结果: