JS传各种⽂件到后端
由于要写⼀个前端上传⽂件按钮功能,本⼈前端是⼩⽩,所以在⽹上搜索了许多,发现FileReader⾮常好⽤。
不多BB,直接来。
1,前端只需要⼀个input标签,
<input type="file" id="file">
2,JS,很简单
$("#file").bind("change",function () {
var fileinfo = ElementById("file").files[0];
var reader = new FileReader();
//console.sult);
inputtypefile不上传文件
};
})
3,选择了readerAsDataURL ⽅法读取数据,因为试过其他⽅式,发现其他⽅式获取数据后在传到后端时,容易引起浏览器崩溃。
4,由于readerAsDataURL⽅法,获取的返回值,并不是完全的数据,⽽是加了⼀些前缀。
data = sult.split(",")[1]  # 这样才是完整的数据
5,使⽤ajax发送数据:
jQuery.ajax({
dataType:"json",
data:JSON.stringify({"fileinfo":data,"name":filename,"path":path,}),
url:"/task/getfile/",
type:"post",
cache:false,
processData:false,
contentType:false,
success:function (data) {
if(data.status==0){
}else{
}
},
});
6,后端接受数据就OK。由于readAsDataURL将⽂件转为了base64格式,所以后端只需要转回去就OK了.
7,打开⽂件(⽂件名后缀要⼀致!⼀致!⼀致!) ,f.write  都会,就不写了。
8,然后就成功了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。