@RestController
public class TestService {
private TestApi computeClient;
private static final String SERVER_NAME = "eureka.client";
@Autowired
private DiscoveryClient discoveryClient;
@RequestMapping(value = "/gethello/{name}", method = RequestMethod.GET)
public String getHello(@PathVariable("name") String name) {
Builder feignBuilder= Feign.builder().decoder(new ResponseEntityDecoder(new SpringDecoder(new ObjectFactory(){
public HttpMessageConverters getObject() throws BeansException {
return new HttpMessageConverters();
}
}))).client(new ApacheHttpClient()).contract(new SpringMvcContract());
computeClient = feignBuilder.target(TestApi.class,discoveryClient.getInstances(SERVER_NAME).get(0).getUri().toString());
return computeClient.testHello(name);
}
}
主要是通过discoveryClient.getInstances(SERVER_NAME).get(0).getUri()获取注册中心实例地址。
如果我的文章对你有帮助,就点一下推荐吧.(^__^)
Original: https://www.cnblogs.com/Gyoung/p/8667873.html
Author: Gyoung
Title: feign调用spring clound eureka 注册中心服务
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/539990/
转载文章受原作者版权保护。转载请注明原作者出处!