ocelot 注入consul 无法匹配路由的问题可能性
最近在搭建微服务,在服务的注册、发现和api的统一管理绕不开 ocelot 和 consul,在没有注入consul时,基础的配置文件能正常转发,但是注入consul 后服务没有按照规定的上游路径来访问的情况(但是按照http://ip:port/consulName/api/user/get 这种方式又能访问呢),这也是我这两天发现的问题,困扰了我两天,百思不得其解,最后才发现问题的所在,这里提供一些导致问题的可能性
1.路由配置头错误(16.1版本后将ReRoutes换成Routes)这个是经常出现的问题
2.ocelot.json注入的配置文件错误(当配置文件内并未出现ocelot官方给定的参数配置时,或者是某个参数配置写错了,这样会造成注入配置文件失效的问题,但是由于是注入了consul所以所有请求的url都会默认为
http://555.66.33.222:5000/VipUser/api/user/get
http://555.66.33.222:5000/identityServic4/api/user/get
所以会出现按照上面的方式仍然能请求服务,但是无法按照你指定的上游目录的地址规则进行替换
可以用这种方式进行测试如果能请求到数据那证明配置文件没有生效 当前前提是上游的url测试不要跟这个完全一样
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架