小结:
Feign主要作用:自动根据参数拼接http请求地址
启动器依赖;
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
Feign客户端:
//声明当前类是一个Feign客户端,指定服务名为user-service
@FeignClient("user-service")
public interface UserClient{
//http://user-service/user/123
@GetMapping("/user/{id}")
UserqueryById(@PathVariable("id") Long id);
}
这是我遇到的问题,在启动时总会报错 Feign PathVariable annotation was empty on param 0。后来看异常查资料发现,原来使用feign的时候,@PathVariable 在Controller 的请求上面的时候,要加与restful一样的参数,项目才会运行,规定就是这样,如下图
推荐几个其他的关于spring cloud报错时的博客链接
https://blog.csdn.net/qq_37495786/article/details/82505737
<https://blog.csdn.net/freyaalisa/article/details/78648975>