Я начинаю изучать Eureka API.Я создал Eureka Server с использованием весенней загрузки и соответствующих клиентов.Для начала я создал Eureka Client и зарегистрировался на сервере.Клиент выставлял сервис get без указания пути
@GetMapping("/")
Это прекрасно работает.Как только я получу серверный экземпляр, используя DiscoveryClient, как показано ниже, я смогу запустить службу
List<ServiceInstance> list = client.getInstances(service);
if (list != null && list.size() > 0) {
URI uri = list.get(0).getUri();
String url=uri.toString();
if (url != null) {
return (new RestTemplate()).getForObject(url, String.class);
}
}
Но я не был уверен, как настроить службу, которая имеет путь, например
@GetMapping("/greetings")
Сейчас я могу жестко закодировать его как
List<ServiceInstance> list = client.getInstances(service);
if (list != null && list.size() > 0) {
URI uri = list.get(0).getUri();
String url=uri.toString()+"/greetings";
if (url != null) {
return (new RestTemplate()).getForObject(url, String.class);
}
}
Или зарегистрировать это как имя службы в bootstrap.yml на клиенте как
spring:
application:
name: eurekaClient2/greetings
Но есть ли другой способ сделать это?Что если я захочу выставить сервис get и post?Как мне настроить в этом случае?