我有这样的东西,
@FeignClient(name = "${airport.service.name}")
而且我有这样的编译错误,
java.lang.IllegalStateException: Service id not legal hostname (${airport.service.name})
问题是如何将主机名形式 applciation.yaml
传递给 FeignClient?
最佳答案
虽然已经晚了,但我正在更新我的答案,因为我在 spring cloud 中使用 feign client 时遇到了这个异常(java.lang.IllegalStateException:服务 id 不是合法的主机名) 根本原因是假装客户端不会接受低于分数的服务名称,请通过以下链接。为了解决这个问题,我将 feign 客户端使用的服务名称重命名为 hypen(school-service) 而不是 understore(school_service)
Github link - spring-cloud-netflix - Issue Github link - spring-cloud-netflix - commit
关于java - 从属性中伪装客户端和名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43230475/