Domain driven design 从前端调用一些不同的restful服务

Domain driven design 从前端调用一些不同的restful服务,domain-driven-design,microservices,dbcontext,restful-architecture,Domain Driven Design,Microservices,Dbcontext,Restful Architecture,假设我有一个angular项目作为前端,它与其他一些restful服务项目进行通信 在某些页面中,我需要从不同的restful服务获取一些数据, 在angular中单独请求任何restful服务可以吗? 或者调用一个restful服务,该服务本身在后端调用其他restful服务 或者我必须调用一个restful服务,但向这个DbContext添加其他实体,我需要在这里查询这些实体?这取决于您正在做什么,但我想说的是,大多数情况下,这样做是可以的。这是一个已建立的称为“复合UI”的微服务模式。有关

假设我有一个angular项目作为前端,它与其他一些restful服务项目进行通信

在某些页面中,我需要从不同的restful服务获取一些数据, 在angular中单独请求任何restful服务可以吗? 或者调用一个restful服务,该服务本身在后端调用其他restful服务


或者我必须调用一个restful服务,但向这个DbContext添加其他实体,我需要在这里查询这些实体?

这取决于您正在做什么,但我想说的是,大多数情况下,这样做是可以的。这是一个已建立的称为“复合UI”的微服务模式。有关详细信息,请参见:

如果您的微服务使用的是CQRS模式(虽然仍然没有错),那么您可能会错过一个构建特定于视图的“视图模型”的机会。但是,如果您正在编写\显示来自多个域的数据,我会说最好还是调用多个微服务来检索您需要的数据


如果不小心的话,您可能会遇到的唯一问题是,如果您正在对接收到的数据进行任何处理以显示数据,那么在客户机代码中引入投影逻辑(没有那么糟糕)或业务逻辑(非常糟糕)。复合用户界面旨在为用户界面提供清晰分隔的部分。

为什么您认为这可能是一个问题?@uğurtaş从另一方调用restful服务会导致耦合,这会给您的系统带来任何问题?查看此网站并阅读使用中间件的原因。如果您的系统也需要中间件,请使用它。否则,调用一个restful服务或两个restful服务并不重要。