feign请求传送实体类参数的一些摸索
作者:互联网
@PostMapping("dc") public String dc(HttpServletRequest request, @RequestBody User user){ List<String> services = discoveryClient.getServices(); services.forEach(item->{ logger.info("Service:"+item+":"); }); String name = user.getName(); return "service"+services+name; }
以上是服务提供方的代码,使用@RequestBody接受请求体中的参数
@GetMapping("/consumer") public String dc(){ User user = new User(); user.setName("mck1"); user.setAge(1); return eurekaClient.dc(user); } @FeignClient("eureka-client") public interface EurekaClient { @PostMapping("/dc") public String dc(@Param("user") User user); }
以上是服务调用方的代码,使用了@Param注解来发送参数(经过我测试发现,这个注解中的名字随便写不影响接收,说明@RequestBody是接收请求体中的所有)
以上是post请求的形式
get请求的形式不能用这种方式,get请求应该用@RequestParam注解来传送普通参数
标签:feign,实体类,String,摸索,dc,user,请求,public,User 来源: https://www.cnblogs.com/changeCode/p/11147420.html