java - 如何聚合来自多个服务的 JAX-RS 响应

标签 java rest jax-rs resteasy

我们有一个登录后显示的用户仪表板。仪表板由多个小部件组成。 每个小部件都从单独的 Restful 服务中提取内容。 例如:/新闻/邮件/问题/警报。 每个小部件在加载到页面后都会调用该服务。这样就有多个Web服务调用。

有没有办法减少多次调用。

它应该工作的方式是,当第一次加载页面时,服务应该在一次调用中返回所有小部件的聚合数据。

每个服务还应该独立可用,以便它可以用于刷新单个小部件以及其他系统集成。

注意:在这种情况下,小部件是任何可以使用来自 Restful 服务的 json 数据的 javascript portlet。 所有服务都位于一个 Web 应用程序中。

我们如何聚合来自多个服务的响应并组合成一个 JSON?

最佳答案

如果您可以添加自己的 JAX-RS 服务,只需添加一个新服务来调用其他每个服务并创建聚合响应。

例如:

GET http://myservice.com/rest/aggregate?service=news&service=mails&service=questions

服务的 URL 前缀可以作为单独的编码参数提供,或者在聚合服务中提供。

如果所有这些都在同一服务器中运行,则只需使用其他服务的现有 API 来创建聚合响应。

关于java - 如何聚合来自多个服务的 JAX-RS 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15218462/

相关文章:

java - 使用控制台更改连接池

java - 我可以在不使用泛型的情况下在 Java 中获取 entrySet 中的键列表吗?

java - SWT List 显示行号

node.js - RESTful API 的最佳基于 Node 的架构?

java - android.content.ActivityNotFoundException : No Activity found to handle Intent

angularjs - GET 与 POST 在哪里使用哪种方法

java - 如何从 JAX-RS 获取 JSON 响应的具体值?

java - 请求 dto 类中的 BigDecimal 属性始终映射 null,无论 API 请求中传递什么内容

java - 自定义对象在 Jax-RS 中反序列化很好,但如果它在另一个对象中使用,则它不起作用

json - 在ListView中显示嵌套的json数组