0.背景

spring-cloud项目,使用ribbon进行负载均衡时,访问接口,出现Whitelabel Error Page,

控制台报错如下:

原因可能有以下几个:

1.spring-cloud3.0以后eureka不再集成ribbon,所以,如果你要使用ribbon需要手动引入,要么就换一种方式。

服务端参考下面引入,注意版本

 <!--eureka 服务端-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
            <version>3.1.8-SNAPSHOT</version>
        </dependency>

然后服务端启动类加上注解 @EnableEurekaServer。

客户端参考下面引入

 <!--eureka 客户端-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
            <version>3.1.8-SNAPSHOT</version>
        </dependency>

客户端启动类加上注解 @EnableEurekaClient

有的文章当中介绍了引入ribbon依赖,测试了使用下面的方法不用引入ribbon

2. 消费者的RestTemplate需要加入@LoadBalanced

然后就可以正常访问了。