新增服务,如何配置gateway映射

Blade 未结 1 95
18049446013
18049446013 剑童 2024-04-09 18:59

一、该问题的重现步骤是什么?

1. 新增服务,服务名称为carbon-service-etp

2. nacos的blade-gateway.json文件配置映射关系,blade-gateway.json配置carbon-service-etp映射如下

[

{

"id": "carbon-etp",

"order": 0,

"predicates": [{

"name": "Path",

"args": {

"pattern": "/carbon-etp/**"

}

}],

"filters": [],

"uri": "lb://carbon-service-etp"

}]

3.通过页面请求http://127.0.0.1:8101/carbon-etp/aaa,接口报404错误


二、你期待的结果是什么?实际看到的又是什么?

期待结果是:gateway能收到api请求,并且转发到carbon-service-etp

实际看到:gateway没有打印请求日志,页面报404错误


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

产品:spring cloud 

版本:

3.4.0.RELEASE

操作系统:linux

四、请提供详细的错误堆栈信息,这很重要。

后台没有信息报错,

问题:新增服务,怎么配置gateway映射


五、若有更多详细信息,请在下面提供。

1条回答
  • 2024-04-09 19:23

    bladex的gateway配置了自动转发,比如你注册到nacos的服务名为:carbon-service-etp,那么就可以直接通过 http://localhost/carbon-service-etp/xxx 来调用。


    如果需要额外自定义服务名,可以用如下配置操作:

    spring:
      cloud:
        gateway:
          # 网关路由配置
          routes: 
            # 路由id,自定义,只要唯一即可
            - id: carbon-service 
              # 路由的目标地址 http就是固定地址
              # uri: http://127.0.0.1:8081 
              # 路由的目标地址 lb就是负载均衡,后面跟服务名称
              uri: lb://carbon-service-etp 
              # 路由断言,也就是判断请求是否符合路由规则的条件
              predicates: 
                # 这个是按照路径匹配,只要以/carbon/开头就符合要求
                - Path=/carbon/**



    0 讨论(0)
提交回复