Springcloud-alibaba&nacos的RestTemplate使用服务名报异常java.net.UnknownHostException
问题描述
本地测试,springboot注册了nacos服务,然后一个springboot通过服务名(http://服务名/接口)调用服务,查看nacos控制台服务都已经注册了,但是无论我是否给RestTemplate添加@LoadBalanced注解,都是报UnknownHostException错误
解决
在maven pom.xml中添加下面的依赖即可
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-loadbalancer</artifactId>
<version>3.0.1</version>
</dependency>
pom依赖

controller
@RequestMapping("/add")
public String add(){
System.out.println("xx成功");
String msg = restTemplate.getForObject("http://stock-service/stock/reduct", String.class);
return "xx成功" + msg;
}
SpringBootApplication
public static void main(String[] args) {
SpringApplication.run(xxxApplication.class,args);
}
@Bean
@LoadBalanced
public RestTemplate restTemplate(RestTemplateBuilder builder){
RestTemplate restTemplate = builder.build();
return restTemplate;
}
版本对应
版本:
| SpringCloud-Alibaba | SpringBoot | SpringCloud |
|---|---|---|
| 2021.1 | 2.4.5 | 2020.0.1 |
本文介绍如何在Spring Boot应用中使用SpringCloud Alibaba Nacos时,遇到的UnknownHostException问题,通过添加特定依赖并配置Controller和@SpringBootApplication,确保正确调用远程服务。
12万+

被折叠的 条评论
为什么被折叠?



