一、当我们需要前端上传文件,通过接口发送到后台时,一般是通过input标签,type类型为file实现上传
//借助Formdata保存上传的文件
const formdata= new Formdata();
formdata.append('file',file),
$.ajax({
    url : '后台接口',
    type : 'GET',
    dataType : 'json',
    data:{
    	'fail': formdata,    // 当我这样发送参数时,发现 formdata是 {} 的
    	'id': 111
	},
    success : function(data) {
        console.log(111);
    },
    error : function(msg) {
    }
});
console.log(formdata)
// 当我打印后发现 formdata 为 {}

console.log(formdata.get(file))
// 用get() 方法可以打印出文件信息
二、当我们调用后台接口时,需要文件内容及其他参数时,建议这样传递
//借助Formdata保存上传的文件,同时保存后台接口需要的参数
const formdata= new Formdata();
formdata.append('file',file);
formdata.append('id',123);
formdata.append('name', 'lihua')

$.ajax({
    url : '后台接口',
    type : 'GET',
    dataType : 'json',
    data:{
    	formdata,    // formdata对象作为参数
	},
    success : function(data) {
        console.log(111111);
    },
    error : function(msg) {
    }
});
Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐