在使用RestTemplate的时候 restTemplate.getForObject的url参数如果写成微服务实力名称的时候报错

解决办法:如果是写实例名字的时候需要在restTemplate的实例对象上添加注解

@LoadBalanced

这样的话就可以了,或者直接微服务的ip地址+端口,

其原理是因为:restTemplate能通过服务名获取到具体的服务是由LoadBalancerInterceptor这个拦截器实现的,而具体的是由RibbonLoadBalancerClient来实现的。RibbonLoadBalancerClient将服务名通过负载均衡策略转为了实际的ip和端口后再apply给restTemplate。

原文链接:https://blog.csdn.net/puhaiyang/article/details/79682177

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值