Я пытаюсь загрузить в корзину S3, и когда я запускаю что-то на рабочем столе, все работает нормально, но когда я делаю снимок и запускаю вещи с помощью своего телефона, приложение зависает и через секунду возвращает сетевую ошибку. Телефоны пытаются загрузить данные, отличные от изображения на рабочем столе?
Мой код f / e прост:
setProfileImage(file){
let data = new FormData();
data.append('image_upload', file);
data.append('user', this.props.username);
axios.post(`/user/add-photo`, data)
.then(res=>{
this.setState({
profile_image : res.data.result.profile_image,
formChanged : true,
imgUploaded : true
});
})
.catch(e=>{
this.errorHandler(e.message)
});
};
и мой б / е метод для загрузки:
async S3Upload(user_id, file){
let file_extension = file.name.split('.').pop();//grab the file extension of for saving in the db
let key = `${user_id}/${UUID()}.${file_extension}`; //create a unique key to save in S3 based on users id
//upload
let params = {Bucket: S3_name, Key: key, Body: file.data};
let result = new Promise(resolve=>{
s3.putObject(params, function(err, data) {
if (err) reject(err);
else resolve(data)
});
});
result = await result;
let full_url = AWS_DOMAIN + key;
await addMedia(user_id, key, file.mimetype.split('/').pop());
return full_url;
}