Nacos 服务发现-服务消费者 使用 feign 调用 服务生产者时报错 java.lang.IllegalStateException: Service id not legal hostname (quickstart_provider) 解决方法:

1、问题描述:

在使用 Nacos 服务发现,编写服务消费者代码时,使用 @@FeignClient(value = “quickstart_provider”) 注解,
运行启动类,报错
java.lang.IllegalStateException: Service id not legal hostname (quickstart_provider)

在这里插入图片描述

2、原因分析:

@FeignClient 注解不支持名字带下划线,即不支持 @FeignClient(value = “quickstart_provider”)
而要修改为:@FeignClient(value = “quickstart-provider”)

在这里插入图片描述

3、解决方法:

1)修改 FeignClient 客户端 相关类,如 ProviderClient.java 类中 @FeignClient 注解的调用名。

// # 注意 FeignClient 不支持名字带下划线,即不支持 quickstart_provider
// @FeignClient(value = “quickstart_provider”) // error, 会报错
@FeignClient(value = “quickstart-provider”) // successful

在这里插入图片描述

2)修改 配置文件 application.yml 中的服务名

name: quickstart-provider #spring应用名, # 注意 FeignClient 不支持名字带下划线,即不支持 quickstart_provid

在这里插入图片描述

3)修改完重启 启动类,再次运行测试。

GitHub 加速计划 / na / nacos
29.83 K
12.75 K
下载
Nacos是由阿里巴巴开源的服务治理中间件,集成了动态服务发现、配置管理和服务元数据管理功能,广泛应用于微服务架构中,简化服务治理过程。
最近提交(Master分支:3 个月前 )
4334cd16 * Support custom client configuration timeout.(#12748) * Add UT.(#12748) 12 天前
b04d2266 16 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐