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客户端进行访问

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐