在项目中,我想通过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的加载顺序来设置。
版权声明:本文为zz133110原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。