spring cloud(三) 服务网关(zuul) 傷城~ 2022-02-24 14:58 166阅读 0赞 # 本系列文章均参考:[朝雨忆轻尘][Link 1],感谢博主! # 这里还有他的技术交流群:429854222,欢迎大家支持博主 若有侵权,还请告知,一定删除 新建springboot项目,pom文件如下: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.test.ream</groupId> <artifactId>test-zuul</artifactId> <version>${project.version}</version> <name>test-zuul</name> <description>gateway project for wisdom education platform</description> <packaging>jar</packaging> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.version>1.0.0</project.version> <java.version>1.8</java.version> <spring-cloud.version>Finchley.RELEASE</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-zuul</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-consul-discovery</artifactId> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> <!-- <repositories> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> </repository> </repositories> --> </project> resource下yml文件: server: port: 8010 spring: application: name: test-zuul cloud: consul: host: localhost port: 8500 discovery: serviceName: ${spring.application.name} # 注册到consul的服务名称 zuul: routes: admin: path: /admin/** serviceId: test-admin # 转发到消费者 / test-admin/ 这个路由转发可以自定义:如本来有个系统管理的微服务,端口为8001,有个登录的接口,localhost:8001/login,通过路由转发之后(zuul设置的端口为8010)请求的地址可为:localhost:8010/admin/login,便于统一管理。当然不设置转发也可这样:localhost:8010/$\{spring.application.name\}/url,如登录地址:localhost:8010/test-admin/login 启动类: @EnableZuulProxy @EnableDiscoveryClient @SpringBootApplication(scanBasePackages={"com.test.ream"}) public class TestZuulApplication { public static void main(String[] args) { SpringApplication.run(TestZuulApplication.class, args); } } @EnableZuulProxy:启动网关 @EnableDiscoveryClient:启用服务发现(注册到consul) @SpringBootApplication:启动类必备。。。 告辞 [Link 1]: https://www.cnblogs.com/xifengxiaoma/
还没有评论,来说两句吧...