文件上传接口
[!DANGER|label: 此案例建立在入门工程后端开发的基础上,请完成入门开发指南中的后端工程搭建再进行此案例。 后端工程搭建]
在入门开发指南中搭建的todo工程中的controller路径下创建一个FileUploadController
@RestController
@RequestMapping("/test")
@Api(tags = "测试文件上传接口")
public class ApiController {
// 注入文件上传工具类
@Autowired
private FileUploadUtils fileUploadUtils;
@PostMapping(value = "/fileUpload")
@ApiOperation(value = "文件上传", notes = "文件上传开放接口")
public String fileUpload(@RequestParam("file") MultipartFile file) throws IOException {
// 这个方法可以获得上传文件名,如img.png
String originalFilename = file.getOriginalFilename();
// 调用文件上传的工具类中的fileUpload方法即可实现文件上传,上传的位置是后端工程配置文件中中配置的本地静态资源路径
fileUploadUtils.fileUpload(file);
// 也可以设置保存路径——myPath参数,如D:\\test\\upload或/usr/yourname/upload
// fileUploadUtils.fileUpload(file,myPath);
// 为了兼容IE9,响应不能用json对象,否则会出现下载json文件的提示。采用拼接json字符串的方式使文件上传组件的回调函数生效
return "{\"code\":\"200\",\"msg\":\"\",\"filename\":\"" + originalFilename + "\"}";
}
}
启动前后端工程,查看效果
[!DANGER|label: 使用上传功能前请确认后端静态资源路径已经配置完成,配置静态资源路径请查看【后端开发指南】-【工程初始化】-【添加配置文件】 静态资源路径配置]
启动前后端工程后,浏览器输入http://localhost:8082/eip-admin-starter-views/views/page/fileUpload,查看效果