Spring cloud Spring Cloud Netflix假装工作不正常

Spring cloud Spring Cloud Netflix假装工作不正常,spring-cloud,netflix-eureka,spring-cloud-netflix,netflix-feign,netflix-ribbon,Spring Cloud,Netflix Eureka,Spring Cloud Netflix,Netflix Feign,Netflix Ribbon,尝试使用带Eureka和Ribbon的外国客户端- 使用名为“测试服务”的Eureka注册服务 能够成功地使用Ribbon和Eureka,如下所示- @Autowired private LoadBalancerClient loadBalancer; public void getEmployee() throws RestClientException, IOException { ServiceInstance serviceInstance=loadBalancer.choo

尝试使用带Eureka和Ribbon的外国客户端-

使用名为“测试服务”的Eureka注册服务

能够成功地使用Ribbon和Eureka,如下所示-

@Autowired
private LoadBalancerClient loadBalancer;

public void getEmployee() throws RestClientException, IOException {

    ServiceInstance serviceInstance=loadBalancer.choose("test-service");

    String baseUrl=serviceInstance.getUri().toString();

    baseUrl=baseUrl+"/test";

    RestTemplate restTemplate = new RestTemplate();
    ResponseEntity<String> response=null;
    try{
        response=restTemplate.exchange(baseUrl,
                HttpMethod.GET, getHeaders(),String.class);

        }
@FeignClient(name="test-service")
public interface RemoteCallService {
    @RequestMapping(method=RequestMethod.GET, value="/test")
    public String resp();

}
@Autowired
    private RemoteCallService loadBalancer;

    public void getEmployee() throws RestClientException, IOException {

        String data=loadBalancer.resp();

        }
然后用假动作打电话如下-

@Autowired
private LoadBalancerClient loadBalancer;

public void getEmployee() throws RestClientException, IOException {

    ServiceInstance serviceInstance=loadBalancer.choose("test-service");

    String baseUrl=serviceInstance.getUri().toString();

    baseUrl=baseUrl+"/test";

    RestTemplate restTemplate = new RestTemplate();
    ResponseEntity<String> response=null;
    try{
        response=restTemplate.exchange(baseUrl,
                HttpMethod.GET, getHeaders(),String.class);

        }
@FeignClient(name="test-service")
public interface RemoteCallService {
    @RequestMapping(method=RequestMethod.GET, value="/test")
    public String resp();

}
@Autowired
    private RemoteCallService loadBalancer;

    public void getEmployee() throws RestClientException, IOException {

        String data=loadBalancer.resp();

        }
但这是行不通的。虚假URL的格式不正确。 在调试时,假客户端具有以下值-

硬编码目标(类型=RemoteCallService,名称=测试服务,url=

谁能告诉我我错过了什么


谢谢

您的依赖关系是什么?如果您有
spring cloud starter ribbon
,它应该自动配置FIGN来解析正确的url。是否有spring cloud starter ribbon、spring cloud starter eureka、spring cloud starter FIGN依赖项。您需要提供一个重新创建问题的示例。您的依赖项是什么?如果您有
spring cloud starter ribbon
,它应该自动配置FIGN来解析正确的url。请务必有spring cloud starter ribbon、spring cloud starter eureka、spring cloud starter FIGN依赖项。您需要提供一个重新创建问题的示例。