我尝试将文件上传到aws s3
上传有效。问题是数据类型。
我尝试上传的文件是这样的blob:
blob:http://localhost:8080/2957b409-cab8-4564-b696-76c0af6ef64f
上传的文件只包含上面的字符串,而不包含blob中的文件(图像)。
如何访问blob并上传原始文件?
感谢
更新:
我现在发现了这个和我们:
const reader = new FileReader();
reader.onload = () => {
const fileAsBinaryString = reader.result;
this.awsS3UploadHelper(pictures,fileAsBinaryString);
// do whatever you want with the file content
};
reader.onabort = () => console.log('file reading was aborted');
reader.onerror = () => console.log('file reading has failed');
reader.readAsBinaryString(file);
fileAsBinaryString
包含一个非常长的字符串...我认为文件内容...当我将文件保存到aws S3时,整个内容都在文件中并存储。
但是当我打开文件时,图像查看器中没有显示任何内容。当我用编辑器打开文件时,文件中有相同的字符串......
可能是什么问题?提前谢谢。
我认为它的编码问题可能是什么?
fileAsBinaryString
包含以下内容:
`PNG
`
原始文件就像这样开始
‰PNG
答案 0 :(得分:0)
解决方案是使用:
reader.readAsArrayBuffer(file);
代替reader.readAsBinaryString(file);