我使用Feign上传文件踩的坑,MultipartFile文件死活传不过去

本文讲述了在使用Feign调用API上传MultipartFile文件时遇到的问题,即文件参数名无法按预期改变,始终为前端提交的原始名称。通过在远端接口添加HttpServletRequest参数并检查parts,发现Feign中@RequestPart的value属性指定的参数名并未生效,实际参数名由前端提交的名称决定。解决方案是调整前端或Feign接口以匹配实际参数名。
摘要由CSDN通过智能技术生成

我使用Feign上传文件踩的坑,MultipartFile文件死活传不过去

Feign上传文件

基本信息:通过后台管理,更改APP端的头像。我是用feign来调用app端的修改头像接口。两个参数,string类型的userId和图片文件headImg.

什么样的坑

前端调用我的接口,通过form表单向我提交这两个参数。参数名分别叫userId和headImg。我的controller层接受到这两个参数后,向后传递,一直到feign。然而,我通过feign调用的app端的接口,图片的参数名叫headPortrait。我在feign里通过注解来指定图片文件的参数名,但是没用,死活传不过去。
我的controller层代码大概如下:

public class UserController{

	@Autowired
	private Feign feign;
	
	@PostMapping("/headImg")
	public Result updateHeadImg(@RequestParam("userId") String userId, @NotNull MultipartFile headImg){
		//前端给我传图片使用的参数名是headImg
		return feign.updateHeadImg(userId, headImg);
	}
	}

我的feign代码大概如下:

@FeignClient(name="app-user-service")
public interface Feign{
	//前端给我传递的图片叫headImg,而我调用的接口,图片参数名叫headPortrait&#x
  • 16
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值