Spring + Open Feign upload file 文件上传
来源:互联网 发布:mysql 序号 编辑:程序博客网 时间:2024/05/16 09:35
问题描述
在使用Spring + Open Feign的时候,在上传文件时遇见了些问题,由于其官方文档(https://github.com/OpenFeign/feign) 中没有提及到file upload的功能,因此使用的时候遇见了一些问题,Google尝试了好多种方案后,终于解决,在此记录。
解决方案
首先需要进入Maven pom依赖:
<dependency> <groupId>io.github.openfeign</groupId> <artifactId>feign-jackson</artifactId> <version>9.5.1</version></dependency><dependency> <groupId>io.github.openfeign.form</groupId> <artifactId>feign-form</artifactId> <version>2.0.5</version></dependency><dependency> <groupId>io.github.openfeign</groupId> <artifactId>feign-gson</artifactId> <version>9.5.1</version></dependency>
其中,如果使用file upload功能,需要引入feign-form的依赖
调用方式:
public interface FileUploadResource { @RequestLine("POST /interface/upload") @Headers("Content-Type: multipart/form-data") Object upload(@Param("file") File file);}
public class UploadService { private static final String HTTP_FILE_UPLOAD_URL = "http://localhost:8088/v1"; public boolean uploadFile(String fileName, File file) { FileUploadResource fileUploadResource = Feign.builder() .encoder(new FormEncoder(new JacksonEncoder())) .decoder(new JacksonDecoder()) .target(FileUploadResource.class, HTTP_FILE_UPLOAD_URL); Object result = fileUploadResource.uploadFile(file); return true; }}
与正常调用不同的地方是,encoder编码器采用FormEncoder,请求头部分要注明媒体类型。
Stackoverflow原问题地址:
https://stackoverflow.com/questions/31752779/file-upload-using-feign-multipart-form-data
阅读全文
0 0
- Spring + Open Feign upload file 文件上传
- Spring MVC 文件上传 file upload
- Spring Boot 上传文件(spring boot upload file)
- RAP upload file 上传文件
- angular file upload 文件上传
- JQuery Upload File 上传文件提示 Empty file upload result
- 【Spring】Spring MVC文件上传--整合bootstrap-fileinput和jQuery-File-Upload
- SpringMVC File Upload 多文件上传
- jquery-file-upload 文件上传,带进度条
- [Angularjs]ng-file-upload上传文件
- angular-file-upload angularJS 文件上传
- AngularJS 文件上传控件 ng-file-upload
- AngularJS 文件上传控件 ng-file-upload
- jQuery-File-Upload 文件上传插件
- Angular2使用ng2-file-upload上传文件
- [Angularjs]ng-file-upload上传文件
- AngularJS 文件上传控件 ng-file-upload
- Angular2使用ng2-file-upload上传文件
- 定时任务的两种方式
- 24、IntelliJ Idea 2017 免费激活方法
- how do you improve the core product?-key point
- 新建一个PCH文件,xcode需要配置的地方
- 关于 LINUX SVN的创建和迁移
- Spring + Open Feign upload file 文件上传
- C#中String类的几个方法(IndexOf、LastIndexOf、Substring)
- java教程
- 全局异常捕获器
- weblogic服务上传word等文件直接打开问题解决 博客分类: web应用服务器 在weblogic上发布的web项目,测试中发现出现当上传word、excel、pdf等文件在下载的时候出现
- 机器学习之最小二乘法
- Ubuntu 搭建LNMP环境并支持thinkphp框架
- thermal_instance 代表zone和cool device的绑定的结果
- Mysql 登录相关