Spring Cloud Gateway结合服务发现配置动态路由

背景介绍:Spring Cloud Gateway做为接入业务的统一层,主要是用来鉴权、校验参数、黑白名单等功能。后端采用多个微服务部署,nacos作为服务的注册发现中心以及服务的配置中心。完成服务的注册发现以及路由转发。



spring:

profiles: local

cloud:

nacos:

username: test

password: test

config:

server-addr: 127.0.0.1:8848

namespace: 695b5c44-ee06-4e50-865b-940907e521a3

extension-configs[0]:

data-id: gray-config.yml

refresh: true

file-extension: yml

gateway:

discovery:

locator:

enabled:true

          filters:

-name: RewritePath

args[regexp]:"'/' + serviceId + '/(?.*)'"

              args[replacement]:"'/' + serviceId + '/${remaining}'"

      routes:

-id: service-a

uri: lb://service-a

order: -1

predicates:

- Path= /service-a/v2/**


将service-a服务的content-path路径一样,但是需要根据后面的一个版本号区分不同的服务实例

可以采用两种方式:

1、针对/service-a/**和/service-a/v2/**分别配置对应的routers

2、在配置全局RewritePath情况下,- Path= /service-a/v2/**需要增加一个order的配置,这个值越小,优先级越高,等于/service-a/v2/** > /service-a/** 优先被执行

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容