FeignClient服务端接口404问题

发布时间 2023-07-15 21:41:17作者: 爱吃敏敏

自定义feignClient,服务端继承client接口,调用出现404异常。

问题原因:feignClient接口的实现类上使用@Controller或@RestController的value属性中写入了公共url,导致接口方法404;因为feignClient是根据服务名在注册中心拉取到服务然后路由到feignClient接口的实现类上,跳过了类上的url匹配,导致目标方法的url缺失,因此出现404异常

解决方法:不要再feignClient接口的实现类上抽取公共url直接写在方法的上方

@GetMapping("/api/v1/task//poll/{type}/{priority}")
    @Override
    public ResponseResult poll(@PathVariable("type") int type,@PathVariable("priority") int priority) {
        return ResponseResult.okResult(taskService.poll(type,priority));
    }