soul网关之SpringCloud插件
1.在本地服务中引入SpringCloud插件依赖
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-spring-boot-starter-client-springcloud</artifactId>
<version>${soul.version}</version>
</dependency>
2. 使用eureka作为注册中心,添加注册中心配置
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/ # 你的eureka地址
instance:
prefer-ip-address: true
添加eureka依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
3. 添加网关配置
soul:
springcloud:
admin-url: http://localhost:9095
context-path: /springcloud
full: true
4.启动【soul-admin】
5.启动【soul-bootstrap】
6.进入管理页面,开启springcloud插件
7.访问
curl http://localhost:9195/springcloud/order/findById\?id\=3
{"code":-106,"message":"Can not find url, please check your configuration!","data":null}%
经过调试,发现SpringCloudPlugin没有生效.
原来忘记在【soul-bootstrap】中加入SpringCloudPlugin依赖
8.在soul-bootstrap加入SpringCloudPlugin依赖
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-spring-boot-starter-plugin-springcloud</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-commons</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
9. 重启 【soul-bootstrap】,发现日志中多出以下一行
load plugin:[springCloud] [org.dromara.soul.plugin.springcloud.SpringCloudPlugin]
10. 访问
```bash
curl http://localhost:9195/springcloud/order/findById\?id\=3
{"id":"3","name":"hello world spring cloud findById"}%
```
访问成功。