当前位置 : 主页 > 编程语言 > java >

Spring Cloud Gateway去掉url前缀

来源:互联网 收集:自由互联 发布时间:2021-08-21
Spring Cloud Gateway去掉url前缀 主要是增加一个 route,其他配置不变 routes: - id: service_customer uri: lb://CONSUMER order: 0 predicates: - Path=/customer/** filters: - StripPrefix=1 - AddResponseHeader=X-Response-Default-

Spring Cloud Gateway去掉url前缀

主要是增加一个 route,其他配置不变

routes:
  - id: service_customer
    uri: lb://CONSUMER
    order: 0
    predicates:
      - Path=/customer/**
    filters:
      - StripPrefix=1
      - AddResponseHeader=X-Response-Default-Foo, Default-Bar

新增的StripPrefix可以接受一个非负整数,对应的具体实现是StripPrefixGatewayFilterFactory,从名字就可以看出它的作用是去掉前缀的,那个整数即对应层数。

具体到本例中,我们通过 Spring Cloud Gateway 访问 /customer/hello/windmt,那么当网关服务向后转发请求时,会去掉/customer,微服务收到的就是/hello/windmt。

Spring Cloud中eureka.instance为前缀的的常用配置参数说明

参数名 说明 默认值 preferIpAddress 是否优先使用IP地址作为主机名的标识 false leaseRenewalIntervalInSeconds Eureka客户端向服务端发送心跳的时间间隔,单位为秒 30 leaseExpirationDurationInSeconds Eureka服务端在收到最后一次心跳之后等待的时间上限,单位为秒。超过该时间之后服务端会将该服务实例从服务清单中剔除,从而禁止服务调用请求被发送到该示例上 90 nonSecurePort 非安全的通信端口号 80 securePort 安全的通信端口号 443 nonSecurePortEnabled 是否启用非安全的通信端口号 true securePortEnabled 是否启用安全的通信端口号 appname 服务名,默认取spring.application.name的配置值 unkonwn hostname 主机名,不配置的时候将根据操作系统的主机名来获取

注意:

org.springframework.cloud.netflix.eureka.EurekaInstanceConfigBean

类中,可以查看各个参数的默认值。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。

网友评论