spring cloud客户端远程调用服务端接口
2018-02-09 16:15
405 查看
在提到微服务、分布式、Restful的时候,自然而然就想到了spring boot和spring cloud,今天写一写spring cloud客户端如何调用远程服务端提供的接口。
注:这是在同一个注册中心注册的不同服务间的调用。
首先,需要在服务端提供一个接口:
然后在客户端定义一个接口interface,
通过使用@FeignClient注解就可以调远程的服务端接口了。
说明:
@FeignClient后面的name值为服务端在注册中心注册的名称,还有一个参数为url,代表服务端访问的ip地址;
@RequestMapping注解的value值为服务端提供的方法的名称;
在接口里定义一个方法,方法名任意,参数列表要和服务端的方法一致。
由于客户端的代码还没有在注册中心注册,所以还没有进行测试,不知道结果怎么样。。。。。
注:这是在同一个注册中心注册的不同服务间的调用。
首先,需要在服务端提供一个接口:
@RestController public class ServiceTest { @ResponseBody @ApiOperation(value = "服务端接口", notes = "") @RequestMapping(value = "/list", method = RequestMethod.GET) public Object list() { List<Object> resultList = service.getIdList(); Map<String, Object> resultMsg = CommonUtil.renderData(StatusCode.ERR_CODE_2202200_OK, StatusCode.ERR_CODE_2202200_MSG, resultList); return resultMsg; } }
然后在客户端定义一个接口interface,
@FeignClient(name = "ServiceTest") public interface IServiceTest { @RequestMapping(value = "/list", method = RequestMethod.GET) List<Object> getList(); }
通过使用@FeignClient注解就可以调远程的服务端接口了。
说明:
@FeignClient后面的name值为服务端在注册中心注册的名称,还有一个参数为url,代表服务端访问的ip地址;
@RequestMapping注解的value值为服务端提供的方法的名称;
在接口里定义一个方法,方法名任意,参数列表要和服务端的方法一致。
由于客户端的代码还没有在注册中心注册,所以还没有进行测试,不知道结果怎么样。。。。。
相关文章推荐
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- Spring Cloud Feign作为HTTP客户端调用远程HTTP服务,feign熔断器
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- spring cloud使用Feign实现远程接口的调用
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- RemObjects(一)客户端远程调用服务端接口过程
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- RemObjects(一)客户端远程调用服务端接口过程
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务的方法(推荐)
- 基于Spring注解的WebService接口,服务端编码与客户端调用
- RemObjects(一)客户端远程调用服务端接口过程
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- Spring Cloud Eureka IDEA创建服务端和客户端
- 【Spring Cloud】Feign接口调用
- restful接口客户端和服务端开发,HttpURLConnection,HttpClient,post ,get方式调用
- SpringCloud : 两个微服务进程之间通信(远程调用)