Привет. Я пытаюсь загрузить изображение, снятое на моем телефоне, на мою AWS S3 учетную запись. Едва ли это новая концепция, я понимаю, но я новичок в JS и реагирующе-родной.
Я добился успеха с подобным кодом, когда файл изображения выходит из компонента Input в веб-приложении, но как мне использовать этот код с локальным путем?
Ниже я попытаюсь использовать fs.readfile с локальным путем, однако загрузка все равно не удалась.
- это правильный способ сделать это?
- я неправильно использую readfile?
Заранее спасибо, если можете помочь!
извлечение кода:
uploadFile = (filepath,signedS3request) => {
return new Promise((resolve,reject) => {
let fileParts = filepath.split('.');
let fileType = fileParts[1];
var options = {
headers: {'Content-Type': fileType}
}
fs.readFile(filepath)
.then(imageFile => {
axios.put(signedS3request,imageFile,options)
.then(result => {
console.log('fileupload success:',result);
resolve('success')
})
.catch(error => {
console.log('fileupload failed:',error);
reject('failed file upload')
})
}).catch(error => {
console.log('fileupload : cannot read file : ', filepath);
reject('failed to read file for upload')
})
})
}