فرض کنید می خواهیم بک فایل را از طریق POST
به سرور ارسال کنیم. باید آن را بصورت File و در FormData قرار بدهیم. (این پست را ببینید). حالا اگر پردازشی روی فایلمان داشته باشیم، مثلاً crop کرده باشیم (این پست را ببینید)، فایل در فرمت base64string است. چطور آن را به فرمت File تبدیل کنیم؟
- نفیسه افقی 2 سال قبل سوال کرد
- آخرین ویرایش 2 سال قبل
- شما باید برای ارسال دیدگاه وارد شوید
می توانید متد زیر را تعریف کنید:
urltoFile=(url, filename, mimeType)=>{
mimeType = mimeType || (url.match(/^data:([^;]+);/)||'')[1];
return (fetch(url)
.then(function(res){return res.arrayBuffer();})
.then(function(buf){
return new File([buf], filename, {type:mimeType});
})
);
}
و بدین صورت از آن استفاده کنید:
onCrop(preview) {
this.setState({preview})
this.urltoFile(preview, 'a.png')
.then((file)=>{
return this.props.onChange(file)
});
}
- نفیسه افقی 2 سال قبل پاسخ داد
- شما باید برای ارسال دیدگاه وارد شوید