开发喵星球

若依微服务路由配置方式(236)

在若依项目中,Spring Cloud Gateway 的路由配置主要集中在 ruoyi-gateway 模块的 application.yml 文件中。

每个路由规则包含以下几个主要属性:
id: 路由的唯一标识。
uri: 路由目标 URI。可以是具体的 HTTP 地址,也可以是注册中心中的服务名。
predicates: 路由断言,用于匹配请求。常用的有 PathHostMethod 等。
filters: 路由过滤器,可以对请求或响应进行处理。

1. http地址配置方式

spring:
  cloud:
    gateway:
      routes:
        - id: ruoyi-system
          uri: http://localhost:9201/
          predicates:
            - Path=/system/**
        - id: ruoyi-gen
          uri: http://localhost:9202/
          predicates:
            - Path=/gen/**

这种方式适用于直接访问具体的 HTTP 服务地址,如 ruoyi-systemruoyi-gen 等模块。

2. 注册中心服务路由配置

spring:
  cloud:
    gateway:
      routes:
        - id: ruoyi-system
          uri: lb://ruoyi-system
          predicates:
            - Path=/system/**
        - id: ruoyi-gen
          uri: lb://ruoyi-gen
          predicates:
            - Path=/gen/**

这种方式适用于从注册中心获取服务地址,比如 NacosEureka 等。lb:// 前缀表示负载均衡。

3. WebSocket 路由配置

spring:
  cloud:
    gateway:
      routes:
        - id: ruoyi-ws
          uri: ws://localhost:9301/
          predicates:
            - Path=/ws/**

这种方式适用于 WebSocket 协议的服务,如 ruoyi-ws 模块。

4. 路由过滤器配置

spring:
  cloud:
    gateway:
      routes:
        - id: ruoyi-system
          uri: lb://ruoyi-system
          predicates:
            - Path=/system/**
          filters:
            - StripPrefix=1

这里使用了 StripPrefix=1 过滤器,表示去掉请求路径的第一个层级。

   
分类:Java/OOP 作者:无限繁荣, 吴蓉 发表于:2024-06-12 16:03:55 阅读量:116
<<   >>


powered by kaifamiao