基于Feign的远程服务调用

2022-11-21 12:48:23

Feign是什么

Feign 是一种声明式Web服务客户端,底层封装了对Rest技术的应用,通过Feign可以简化服务消费方对远程服务提供方法的调用实现。

Feign的远程服务调用步骤:

第一步:添加pom依赖 spring-cloud-starter-openfeign


第二步:主启动类添加@EnableFeignClients

第三步:建立feign接口(此接口中写具体调用的业务)



             3.1.添加 @FeignClient 注解 (name = "sca-provider",contextId = "RemoteProviderService")
              3.2.接口方法上添加调用远端哪个服务的请求
              举例: @GetMapping("/provider/echo/{string}")  //前提是远端需要有这个服务
              3.3.注意接口方法中的参数  如果是restful风格 注意添加注解

              举例:@PathVariable("string") String string

第四步:创建feignController层

@RestController
@RequestMapping("/consumer")
public class FeignConsumerController {

    @Autowired
    private RemoteProviderService remoteProviderService;


    /**
     * 业务需求:完成远端  服务端Provider的调用
     * 请求方式:get
     * 请求路径:/consumer/echo/{msg}
     * 请求参数:string类型  msg
     * 返回值:String 字符串
     * */

    @GetMapping("/echo/{msg}")
    public String doFeignEcho(@PathVariable String msg){
        return remoteProviderService.echoMessage(msg);
    }
}

第五步:启动消费者服务,在浏览器中直接通过feign客户端进行访问

  • 作者:故渊159
  • 原文链接:https://blog.csdn.net/qq_63686393/article/details/123147190
    更新时间:2022-11-21 12:48:23