最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
springcloud整合gateway实现网关代码示例
时间:2022-06-29 01:57:19 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下springcloud整合gateway实现网关代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
1.项目目录:
创建项目gateway作为父类
2.代码实现:
父类依赖
org.springframework.boot spring-boot-starter-parent 2.6.2 com.cxh gateway 0.0.1-SNAPSHOT gateway Demo project for Spring Boot pom 8 2021.1 2021.0.0 org.springframework.cloud spring-cloud-dependencies ${spring-cloud-dependencies.version} pom import com.alibaba.cloud spring-cloud-alibaba-dependencies ${spring-cloud-alibaba-dependencies.version} pom import
创建module项目gateway-client
添加依赖
com.cxh gateway 0.0.1-SNAPSHOT com.cxh gateway-client 0.0.1-SNAPSHOT gateway-client Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-test test org.springframework.cloud spring-cloud-starter-alibaba-nacos-discovery 0.2.1.RELEASE org.springframework.cloud spring-cloud-starter-openfeign org.springframework.boot spring-boot-starter-web
yml配置
server: port: 8002 spring: application: name: gateway-client #服务名 profiles: active: dev #环境设置 cloud: nacos: discovery: server-addr: 127.0.0.1:8848 #nacos服务注册
控制层
@RestController public class ClientController { @Value("${server.port}") private String port; @RequestMapping("/index") public String index(){ return "gateway-client端口:" + port; } }
启动类添加注解
@SpringBootApplication @EnableDiscoveryClient public class GatewayClientApplication { public static void main(String[] args) { SpringApplication.run(GatewayClientApplication.class, args); } }
创建module项目gateway-service
添加依赖
com.cxh gateway 0.0.1-SNAPSHOT com.cxh gateway-service 0.0.1-SNAPSHOT gateway-service Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-test test org.springframework.cloud spring-cloud-starter-gateway 3.0.4 com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery com.alibaba.cloud spring-cloud-starter-alibaba-nacos-config org.springframework.cloud spring-cloud-starter-feign 1.4.3.RELEASE org.springframework.cloud spring-cloud-loadbalancer org.springframework.cloud spring-cloud-starter-netflix-hystrix 2.2.10.RELEASE
yml配置
server: port: 8001 spring: application: name: gateway-service #服务名 profiles: active: dev #环境设置 cloud: gateway: routes: # 透传服务 - id: gateway-client #设置路由id uri: lb://gateway-client #设置路由的url lb://nacos服务注册名称 predicates: - Path=/client/** #路径匹配规则 filters: - StripPrefix=1
跨域配置
@Configuration public class CorsConfig { @Bean public CorsWebFilter corsFilter() { CorsConfiguration config = new CorsConfiguration(); config.addAllowedMethod("*"); config.addAllowedOrigin("*"); config.addAllowedHeader("*"); UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(new PathPatternParser()); source.registerCorsConfiguration("/**", config); return new CorsWebFilter(source); } }
3.实现效果:
启动nacos后,再启动gateway-client, gateway-service项目,打开浏览器http://localhost:8001/client/index
返回信息:gateway-client端口:8002
相关文章
- 《原神》5.2卡池抽取建议 11-14
- 《原神》5.2版本新怪物介绍 11-14
- 《原神》希诺宁增伤触发方法 11-14
- 《原神》循音觅奇活动入口 11-14
- 《原神》循音觅奇兑换码获取方法 11-14
- 《原神》花羽会活动飞行技巧介绍 11-14