独立使用Feign进行远程调用

独立使用Feign进行远程调用

导航:

  • 独立使用Feign进行远程调用
    • 一. 直接操作,以后细讲
      • 1.1 引入相关依赖
      • 1.2 配置远程调用地址 application.yml
      • 1.3 配置远程调用类 相关Demo

一. 直接操作,以后细讲

1.1 引入相关依赖

 <dependency>
         <groupId>org.springframework.cloud</groupId>
         <artifactId>spring-cloud-starter-openfeign</artifactId>
         <version>2.1.0.RELEASE</version>
     </dependency>

1.2 配置远程调用地址 application.yml

remote:
	http:
		urlone: http://www.baidu.com	# 可多配置地址
		urltwo: http://www.sina.com	

1.3 配置远程调用类 相关Demo

Demo1:

package com.migu.music.pac.asynctask.task.impl.bellmini;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * xxxx
 */
@FeignClient(name="queryBellById", url="${remote.http.urlone}")
public interface QueryBellFeign {
    @GetMapping("/v1.0/content/resourceinfo.do")
    String queryBellById(@RequestParam("resourceType") String resourceType, @RequestParam("resourceId") String resourceId);
}

  • Dmoe2:
package com.migu.music.pac.asynctask.task.impl.bellmini;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * xxx
 */
@FeignClient(name="queryCount", url="${remote.http.urltwo}")
public interface QueryCountFeign {
    @GetMapping("/graphic/api/v1/recommend/videoCringList?plat=1&scenario_id=15&rule_id=016")
    String queryCount(@RequestParam("records") String records);
}

注意启动类要加@EnableFeignClients 注解
注意版本依赖问题,我使用的SpringBoot和Feign的版本如下:

  • 父工程
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.2.RELEASE</version>
    </parent>
  • Feign版本:
       <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-openfeign -->
       <dependency>
           <groupId>org.springframework.cloud</groupId>
           <artifactId>spring-cloud-starter-openfeign</artifactId>
           <version>2.1.0.RELEASE</version>
       </dependency>

你可能感兴趣的:(#,java,网络通信汇总)