spring - HATEOAS微服务的跨服务链接

标签 spring spring-boot hateoas spring-hateoas microservices

我有许多使用 Spring Boot 构建的微服务,所以为了好玩,我想我可以向它们添加 HATEOAS 以帮助设置跨资源链接。它似乎在特定项目中工作得很好,但我想知道是否有一种跨 API 链接的好方法。例如,假设我有 3 个服务:

用户详情服务:
代码:

/users/{userid}

用户日历服务:
代码:
/users/{userid}/appointments
/users/{userid}/appointments/{appointmentid}

用户消息服务:
代码:
/users/{userid}/messages
/users/{userid}/messages/{messageid}

为了通过 API 进行浏览,最好有从用户资源到其约会和消息的链接。同样,从这些资源中获得链接会很好。当我有一个包含类路径上所有内容的 API 时,这一切都非常容易实现,我可以在其中编写代码,例如:

代码:
user.add(linkTo(methodOn(CalendarController.class).appointments(user.getKey())).withRel("appointments"))

但是,如果 CalendarController 不在我当前正在访问的服务的类路径上,我将无法执行此操作。

是否有一种好的/推荐的方法来创建指向当前项目中不存在的 Controller 的链接?

引用自 spring forums

最佳答案

也许这比您希望的要复杂一些,但正如前面提到的 here ,这正是Eureka是为了。它还与新 Spring Cloud 有很好的集成。项目。

关于spring - HATEOAS微服务的跨服务链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26854986/

相关文章:

java - 休息 HATEOAS : How to serialize nested resources (with Spring HATEOAS)?

web-services - 在 HATEOAS 中向消费者建议采取行动

java - 从外部 JAR 文件加载 Spring 组件

java - 关闭浏览器后HttpSession发生变化

java - 是否可以创建我自己的自定义注释来充当 Spring @Controller 注释?

java - 如何更改 Spring-WS 2.4.4 或更高版本中 maxOccurs 的默认限制?

java - Spring HATEOAS 资源支持 -> 域对象

java - 是否可以在构造函数上使用@Resource?

java - Spring jpa criteriaBuilder 在列表中搜索

spring-boot - 在Spring Boot中运行Cassandra