vue页面设置
//文件显示列表
点击上传
只能上传jar文件,且不超过500kb
beforeUpload(file){
console.log("文件名",file.name,this.fileList)
for (let i = 0; i {
this.$http.get('/aaaa/task/del?taskId='+this.taskId+'&name='+file.name).then(function(res) {
......
});
}).catch(() => {
this.getJarList();
return false;
});
},
myUpload(file){
let fd = new FormData();
fd.append('file',this.file);//传文件
fd.append('taskId',this.taskId);//传其他参数
// fd.append('filename',file.name);//传其他参数
this.$http.post('/aaaa/task/add',fd).then(function(res) {
....
});
},
fileList一个对象的内容
name:"xxxx.jar" status:"success" uid:123456456
参数
this.param={
taskId:this.taskId
}
springboot设置
1.请求的注解:produces = "multipart/form-data;charset=utf-8", method = RequestMethod.POS
@RequestMapping(value = "/add", produces = "multipart/form-data;charset=utf-8", method = RequestMethod.POST)
public String addJar(int taskId, HttpServletRequest request) throws IOException, ServletException {
....
//获取文件
Part part = request.getPart("file");// input的name值
String dis = part.getHeader("Content-Disposition");
// 获取文件名--sdsf.jar
String fna = dis.substring(dis.indexOf("filename=") + 10, dis.length() - 1);
String fname = fna.substring(fna.lastIndexOf("\") + 1, fna.length());// 有的浏览器获取的是路径+文件名
// 若是文件名为空,说明此时没有选择文件,返回,文件上传失败,选择文件
if (fname.length() < 1) {
//此时没有选择文件
}
....
}
补充知识:elementUI upload图片文件上传到指定后端接口解决方法
1. 一般后端提供接口上传文件都有参数。如果我们不传参就会报错或显示图片不存在,上传失败。所以我们要参考他的文档。action 是上传路径; ==name== 就是传参的属性(关键)。
imageUrl: '',
handleAvatarSuccess(res, file) {
console.log(res)
console.log(file)
this.imageUrl = URL.createObjectURL(file.raw);
console.log(this.imageUrl)
},
//验证图片格式
beforeAvatarUpload(file) {
const isJPG = file.type === 'image/jpeg';
const isLt2M = file.size / 1024 / 1024 < 2;
if (!isJPG) {
this.$message.error('上传头像图片只能是 JPG 格式!');
}
if (!isLt2M) {
this.$message.error('上传头像图片大小不能超过 2MB!');
}
return isJPG && isLt2M;
},
css代码
.avatar-uploader /deep/.el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
}
.avatar-uploader .el-upload:hover {
border-color: #409EFF;
}
.avatar-uploader-icon {
font-size: 28px;
color: #8c939d;
width: 100px;
height: 100px;
line-height: 100px;
text-align: center;
}
.avatar {
width: 100px;
height: 100px;
display: block;
}
参考elementUI文档:https://element.eleme.cn/#/zh-CN/component/upload
以上这篇vue+springboot+element+vue-resource实现文件上传教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持考高分网。



