使用预先签名的URL我尝试使用JavaScript fetch
在我的AWS S3存储桶中输入对象(图像)。
以下是我正在使用的代码片段,由文件上传输入上的更改事件触发。
// The event here is from a change
// trigger on the file input
const target = event.target
const file = target.files[0]
const reader = new FileReader()
reader.onload = (event) => {
fetch(PRESIGNED_S3_URL, {
method: 'put',
body: event.target.result,
headers: new Headers({
'Content-Type': file.type
}),
}).then((response) => {
response.json().then((data) => {
// Success
})
})
}
// Read the selected file
reader.readAsText(file)
这确实上传了文件,正确设置了它的名称和文件类型,但是当我尝试查看文件时它已损坏。
我坚持不正确地阅读和上传文件内容。任何帮助表示赞赏!
答案 0 :(得分:0)
要上传图片,您需要将内容处理设置为CONVERT_TO_BINARY。