步骤:
1.后台接收图片要用到@PostMapping,参数要用springmvc里的MultipartFile接收,返回结果是图片地址
2.我们在service层要对图片做校验,用getContextType做类型校验,用以下做加图片校验
校验文件是否为空或假图片
BufferedImage image = null;
try {
image = ImageIO.read(multipartFile.getInputStream());
} catch (IOException e) {
throw new MyException(ExceptionEnum.INVALID_FILE_TYPE);
}
if (image == null) {
throw new MyException(ExceptionEnum.INVALID_FILE_TYPE);
}
注意事项:
nginx和网关对文件上传都有限制,都为1m。
nginx修改限制:
client_max_body_size 5m;
网关:思路是绕过网关的文件检查(注意不是绕过网关),在nginx添加以下
location /api/upload {
rewrite "^/(.*)$" /zuul/$1;
}