春天-云-网关路径路由谓词不接受"/"



我有一个自定义网关过滤器,它使用application.yml中编写的路由,当我想将路由谓词从/test/myTest更改为/public时,请求返回404/"没有重新配置,因为我试图将myTest更改为/public并进行测试,这是有效的。

有什么想法吗?请告诉我如何使用这种格式的谓词/name/name/**

这是我的申请。yml:

myTest-gateway:
default-uri: https://app
apps:
/test/myTest: mymicroservice-name
spring:
cloud:
gateway:
enabled: false
x-forwarded:
proto-enabled: false 
routes:
- id: appsPrefixPathPublic
uri: ${myTest-gateway.default-uri}
predicates:
- AppPath=/test/myTest
filters:
- StripPrefix=1
- PrefixPath=/public

这就是我得到的错误:

无内容

<404未找到NOT_FOUND<内容类型:[application/json]<内容长度:[147]

{"时间戳":"2020-08-26T15:44:12.023+00000","路径":"/test/myTest/anthe","状态":404,"错误":"否Found"消息":null;requestId":"e7baeeeb-6"}

java.lang.AssertionError:预期状态:<200 OK>但是是:<404NOT_FOUND>

来自文档:

spring:
cloud:
gateway:
routes:
- id: nameRoot
uri: https://nameservice
predicates:
- Path=/name/**
filters:
- StripPrefix=2

当通过网关向/name/blue/red发出请求时,向nameservice发出的请求看起来像nameservice/red

您应该将1更改为2。

相关内容

  • 没有找到相关文章

最新更新