解决spring cloud gateway调用其他模块出现的问题
作者:Treasure_zz
这篇文章主要介绍了解决spring cloud gateway调用其他模块出现的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
spring cloud gateway调用其他模块问题
在项目中,我想通过spring cloud gateway 来调用其他模块。
遇到了二连坑,这里记录一下
1.feign调用失败
一开始用的feign,发现feign一直无法调用。具体情况是调用失败。
之后debug,才发现注入的feignClient就是空的。然后通过调研才了解到,feign的功能是依赖Spring Boot web 这个依赖。
而这个依赖恰恰又和gateway冲突,这个冲突在引入Spring Boot web 这个依赖之后,控制台就会显示。
所以只好打算更换RestTemplate发送消息。
2. RestTemplate 和 gateway filter加载顺序
因为我是在filter中去调用其他服务的,所以在配置好RestTemplate相关内容之后,发现注入的RestTemplate 也是空,之后打印才发现,RestTemplate加载在Gateway的Filter之后,所以就直接在filter里new了。
当然也可以通过改变bean的加载顺序来设置。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。