当前位置:   article > 正文

SpringBoot和SpringCloud 网关Gateway基本配置/测试详情_springboot网关配置

springboot网关配置

// SpringCloud组件 gateway 工具
//  统一解决跨域
//  负载均衡  根据服务名 自动 负载均衡
//  熔断降级
//  统一鉴权
//  请求过滤
//  路径重写
//  限流保护
// gateway 工具 三个组成
// 路由 断言 过滤

// gateway 使用
// 1. 创建 gateway 模块
// 2.在模块中 引入相关依赖
  <dependencies>
<!--        自定义的工具类-->
        <dependency>
            <groupId>com.schoolWeb</groupId>
            <artifactId>common_utils</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>

<!--        nacos的注册中心-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

<!--        gateway 核心依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>

        <!--gson-->
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
        </dependency>

        <!--服务调用-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
    </dependencies>

// 3. 创建启动类

// 4. 创建 配置文件 配置 网关需要的配置
 

# 端口号
server.port=8009

#服务名   服务名称 不要写 下划线 _ 否则 分布式 会报错
spring.application.name=service-gateway

# 环境设置 dev test prod
spring.profiles.active=dev

#nacos 服务地址
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

#使用服务发现路由
spring.cloud.gateway.discovery.locator.enabled=true

# 例子:
#设置路由id  一般写你 服务模块的名字
#spring.cloud.gateway.routes[0].id=service-cms

#设置路由的uri   lb://nacos注册服务名称
#spring.cloud.gateway.routes[0].uri=lb://service-cms

#设置路由断言,代理servicerId为auth-service的/auth/路径 你的路径 匹配规则
# /*/acl/**  表示 第一个随便匹配 第二个 匹配 acl  第三个匹配所有
# 一般是你 控制器这个注解里的 @RequestMapping("/cmsservice/banner")  路径
#spring.cloud.gateway.routes[0].predicates= Path=/*/acl/**

#配置service-cms服务
spring.cloud.gateway.routes[0].id=service-cms
spring.cloud.gateway.routes[0].uri=lb://service-cms
spring.cloud.gateway.routes[0].predicates= Path=/cmsservice/**

#配置service-edu服务
spring.cloud.gateway.routes[1].id=service-edu
spring.cloud.gateway.routes[1].uri=lb://service-edu
spring.cloud.gateway.routes[1].predicates= Path=/eduservice/**


#配置service-msm服务
spring.cloud.gateway.routes[2].id=service-msm
spring.cloud.gateway.routes[2].uri=lb://service-msm
spring.cloud.gateway.routes[2].predicates= Path=/sms/**

#配置service-oss服务
spring.cloud.gateway.routes[3].id=service-oss
spring.cloud.gateway.routes[3].uri=lb://service-oss
spring.cloud.gateway.routes[3].predicates= Path=/oss/**


#配置service-ucenter服务
spring.cloud.gateway.routes[4].id=service-ucenter
spring.cloud.gateway.routes[4].uri=lb://service-ucenter
spring.cloud.gateway.routes[4].predicates= Path=/ucentermember/**

//5. 启动网关服务

// 通过网关 统一解决
// 跨域问题  要么在 网关里处理 要么 在模块里处理 加个注解  只能在第一个地方解决 两个地方都配置会出问题
// 权限问题
// 异常问题
// 等等 一些公共的处理 都可以在网关模块里处理

 

 

// 具体代码 一般固定写法 代码分享在 github上
javaUtils/gateway at main · Json870422471/javaUtils · GitHub
————————————————
版权声明:本文为CSDN博主「Json____」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Drug_/article/details/122293962

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/594433
推荐阅读
相关标签
  

闽ICP备14008679号