gateway网关不走本地问题
gateway网关不走本地问题
-
原始网关配置
[ { "id": "lecent-park", "order": 0, "predicates": [ { "name": "Path", "args": { "pattern": "/lecent-park/**" } } ], "filters": [], "uri": "lb://lecent-park-cy" } ]
-
解决后配置
将order值设置为-1
[ { "id": "lecent-park", "order": -1, "predicates": [ { "name": "Path", "args": { "pattern": "/lecent-park/**" } } ], "filters": [], "uri": "lb://lecent-park-cy" } ]
-
原因分析
- 路由配置自动装配到route
- 在请求进来的时候进行路由匹配
- 在路由匹配的时候是循环所有路由,直到匹配成功返回PathPattern对象
问题就出来匹配的时候,因为同一个路由(/lecent-park/**)有多个,先匹配到谁就返回谁
- 装配路由(有两个)
- 匹配路由(如果order=0) 走的路由是lecent-park
- 如果order=-1 第一次就匹配到lecent-park-cy
上一篇:
IDEA上Java项目控制台中文乱码