feign调用上传文件接口(MultipartFile)
发布日期:2021-05-06 22:37:57 浏览次数:8 分类:技术文章

本文共 2509 字,大约阅读时间需要 8 分钟。

1.服务端MultipartFile这个类型的参数要用@RequestPart(“file”) 这个注解

@PostMapping("/uploadMultipleFile")    public Result uploadImg(@RequestPart("file") MultipartFile[] files){           try {               return uploadService.uploadImg(files);        }catch (Exception e){               log.info("文件上传异常"+ ExceptionUtils.getStackTrace(e));            return new Result(ResultCode.FAIL,"文件上传异常");        }    }

2.调用端加入如下坐标

io.github.openfeign.form
feign-form
3.8.0
io.github.openfeign.form
feign-form-spring
3.8.0
org.springframework.cloud
spring-cloud-starter-openfeign

3.加入配置类

import feign.codec.Encoder;import feign.form.spring.SpringFormEncoder;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.Primary;import org.springframework.context.annotation.Scope;@Configurationpublic class MultipartSupportConfig {       @Bean    @Primary    @Scope("prototype")    public Encoder multipartFormEncoder() {           return new SpringFormEncoder();    }    @Bean    public feign.Logger.Level multipartLoggerLevel() {           return feign.Logger.Level.FULL;    }}

4.调用端feign接口

import com.qianxian.common.util.Result;import com.qianxian.user.config.MultipartSupportConfig; import org.springframework.cloud.openfeign.FeignClient;import org.springframework.http.MediaType;import org.springframework.web.bind.annotation.*;import org.springframework.web.multipart.MultipartFile;/** * 上传接口 * @author yyj */@FeignClient(name="ldd-upload",configuration =  MultipartSupportConfig.class)public interface UploadControllerFeign {       /**     * 图片上传     * @param files     * @return     */    @RequestMapping(method = RequestMethod.POST, value = "/uploadMultipleFile",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)    Result uploadImg(@RequestPart("file") MultipartFile[] files);}

5.controller层调用

@PostMapping("/uploadMultipleFile")    public Result uploadImg(@RequestPart("file") MultipartFile[] files){           try {               return uploadControllerFeign.uploadImg(files);        }catch (Exception e){               log.info("文件上传异常"+ ExceptionUtils.getStackTrace(e));            return new Result(ResultCode.FAIL,"文件上传异常");        }    }
上一篇:centos 文件格式不对执行报错 || centos查看或者修改文件格式
下一篇:NIO

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年03月23日 06时51分49秒