说明
想用Open Feign传递多个参数,但是方法不对,还报错了Method has too many Body parameters
代码
在每个参数都加上注解@RequestParam
@FeignClient("user")
public interface UserFeignService {
@PostMapping(value = "/user/updateStatus")
//注释掉的是错的,会报错:Method has too many Body parameters:
//public boolean updateUserStatusByEmail(@RequestBody String param1, String param2);
//每个参数都加上注解@RequestParam才对
public boolean updateUserStatusByEmail(@RequestParam("param1") String param1, @RequestParam("param2")String param2);
}
注意实际调用的Controller那里也要加上注解@RequestParam
@RestController
@RequestMapping("user")
public class UserController {
@PostMapping(value = "/updateStatus")
public boolean updateStatus(@RequestParam("param1") String param1, @RequestParam("param2")String param2){
///具体代码省略
}
}