@FeignClient标识的接口,里面的方法接收了别的服务传来的参数,代码如下
@FeignClient(value = "HCHUSER-CENTER",url ="${feign.user.url:}")
public interface FeedbackFacade {
@RequestMapping(value = { "feedback/reply" }, method = { RequestMethod.POST })
BaseResult<Boolean> reply(@RequestBody FeedbackReply para);
}
随后创建了一接口的实现类
@RestController
public class FeedbackController implements FeedbackFacade {
@Override
public BaseResult<Boolean> reply(FeedbackReply para){
//业务逻辑
}
}
为什么在实现类的方法中,没有写@RequestBody 标签,方法就接收不到其他服务传来的参数
因为传的是json字符串,@RequestBody 就是能将json字符串映射成对象。
注解@RequestBody接收的参数是来自requestBody中,即请求体。一般用于处理非 Content-Type: application/x-www-form-urlencoded编码格式的数据,比如:application/json、application/xml等类型的数据。
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632