原因
使用了 @RequestBody 这个注解,就不能使用 @GetMapping 而是使用 @PostMapping
只有单个参数@RequestParam或者无参的时候,可以使用 @GetMapping
或者 @PathVariable @RequestBody 两个注解连用可以使用 @GetMapping
错误记录
@FeignClient("nacos-stock")
public interface StockFeign {
@GetMapping("/stock/get1")
public String get1(String p);
}
前台报错:
后台报错:
feign.FeignException$MethodNotAllowed: [405] during [GET] to [http://nacos-stock/stock/get1] [StockFeign#get1(String)]: [{"timestamp":"2021-05-12T10:04:05.175+00:00","status":405,"error":"Method Not Allowed","message":"","path":"/stock/get1"}]
解决
添加@RequestParam("p")
注解
@FeignClient("nacos-stock")
public interface StockFeign {
@GetMapping("/stock/get1")
public String get1(@RequestParam("p") String p);
}