使用 spring 云网关合并来自两个微服务的结果

Use spring cloud gateway to merge results from two microservices

假设我有两个微服务,支付和公司。我有一个端点 /payments/late,其中 return 是延迟付款列表:

[{'id': 1, due_date: 2019-05-05, value: 1234.123, company_id: 5}]

我想在我的前端应用程序上创建一个 table 来显示这样的 table?

付款:

Company Name | Due Date        | Amount
    XXX      | 05/05/2018      | 1234.12

所以我的前端应用程序必须从两个不同的微服务调用两个 Web 服务。

我正在考虑添加一个 API 网关标签,负责:

a) 调用支付网络服务。 b) 从支付网络服务 return 获取 ID 并调用公司网络服务以获取公司数据。 c) 将公司数据与支付数据合并为一个 json:

[{'id': 1, due_date: 2019-05-05, value: 1234.123, company_id: 5, company_name: "XXXXX"}]

或类似的东西。

是否可以使用 Spring 云网关来做到这一点?

您可以使用 Feign Client 从 Payments Webservice 调用您的公司 Webservice,然后将结果合并到 Payments Webservice 中,然后 return 将其合并到 UI。

从UI调用/payments/late得到合并结果