Layui upload报错“请求上传接口出现异常”

后台返回值格式与Layui要求不相符

接口返回的相应信息(response)必须是一个标准的 JSON 格式,如:

1
2
3
4
5
6
7
{
"code": 0
,"msg": ""
,"data": {
"src": "http://cdn.layui.com/123.jpg"
}
}

与form共同提交时,传参问题

将upload绑定到form的button上,在点击form表单时,同时提交upload和form

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
upload.render({
elem: "#upload-btn",
url: url,
data: {
auth: function(){ // 动态获取数据
var formData; // 获取表单数据
return formData;
}
},
bindAction: "#form-submit-btn", // 绑定到form的提交按钮
done: function(res, index, upload){
// 在上传接口请求完毕后触发,但文件不一定是上传成功的,只是接口的响应状态正常(200)
// do something
}
});

前端console会提示form中没有用post方法传递参数,这也可能导致报错“请求上传接口出现异常”

解决方法:在done的回调函数中执行form表单提交