当前位置: 代码迷 >> 综合 >> I/O error on GET request for http://userservice/user/point/update: userservice; nested exception
  详细解决方案

I/O error on GET request for http://userservice/user/point/update: userservice; nested exception

热度:14   发布时间:2023-11-24 23:54:05.0

解决springcloud“I/O error on GET request for xxx;nested exception xxx问题”

问题原因是嵌套的xxxservice请求未知
解决方法:
在springcloud启动类中的RestTemplate类的Bean,未用@LoadBalanced注解修饰
错误代码:

	@Beanpublic RestTemplate initRestTemplate(){return new RestTemplate();}

修改后代码:

	@Bean@LoadBalancedpublic RestTemplate initRestTemplate(){return new RestTemplate();}

解释:
@LoadBalanced注解为RestTemplate Bean添加了一个LoadBalancerInterceptor拦截器。可以将请求的地址中的服务逻辑名转为具体的服务地址。也就是将localhost:8080转成了Eureka的application的名称。所以没有加该注解则会报xxxservice未找到。

  相关解决方案