我已经定义了一个 REST 接口,它使用不同的 Spring Boot 应用程序实现spring.application.name
(spring.application.name
在我的业务中不能相同)。
如何只定义一个 Feign Client,并且可以访问所有 SpringBootApplication REST 服务?
SpringBootApplication A(spring.application.name=A) 和 B(spring.application.name=) 有这个 RestService:
@RestController
@RequestMapping(value = "/${spring.application.name}")
public class FeignRestService {
@Autowired
Environment env;
@RequestMapping(path = "/feign")
public String feign() {
return env.getProperty("server.port");
}
}
另一个 SpringBootApplication C:
@FeignClient(name="SpringApplication A or B")
public interface FeignClientService {
@RequestMapping(path = "/feign")
public String feign();
}
在 SpringBootApplication C 中,我想使用 FeignClientService 来访问 A 和 B。你有什么想法吗?