问题描述:
1、有服务A 通过 FeignClient 注解 来调用 服务B,如下图所示,就一个参数,结果,服务B报丢失参数。
FeignClient
@PostMapping("/nonuser/target/agent/transactions/num")
Result<TargetDealSvRes> getTransactionsNum(String agentId);
服务B
@PostMapping("/transactions/num")
public Result<TargetDealSvRes> getTransactionsNum(@RequestParam String agentId)
2、解决方法
(1)、把Post请求改为Get请求,@FeignClinet和被调用者的参数都要加@RequestParam
(2)、请求参数不用单参数,把单参数封装成对象来传递。
本次采用方式(1),改后的效果如下图所示:
@GetMapping("/nonuser/target/agent/transactions/num")
Result<TargetDealSvRes> getTransactionsNum(@RequestParam String agentId);
@GetMapping("/transactions/num")
public Result<TargetDealSvRes> getTransactionsNum(@RequestParam String agentId)