如果命令模型(微服务)知道 201 创建响应中查询模型的资源 url 可以吗? (CQRS)

Is it okay if the command model(microservice) knows the resource url of the query model in 201 created response? (CQRS)

我将我的应用程序分为命令模型和查询模型。

当命令在命令模型上执行时,事件被发布,然后查询模型创建自己的数据并持久化。 (它发生在同一笔交易中。)

当用户使用Post方法发送数据时,命令模型必须return created 201。 我的问题是命令模型知道查询模型的资源 URL 可以吗? (命令模型的控制器可以和查询模型耦合吗?)

例如)

请求

Post /articles

body: { title: "the title", body: "the body"}

回应

201 Created

Location: /subscription/news

UI 仅从查询模型中读取数据,查询模型与命令模型相比有一些不同的 URL 模式,它们仅提供 news 作为集合。

上面的例子有意义吗?你怎么看?

在命令服务 (POST) 响应的 HTTP 响应中放置对查询服务 (GET) 请求的引用并不意味着这两个服务是耦合的。 header 中仅存储有关在哪里可以找到新创建的资源的信息,但服务及其功能保持分离。

如果您想了解更多有关自动创建 URL 的信息(我假设您的意思是通过服务之间的耦合对 URL 进行硬编码)而不是对它们进行硬编码,您也可以看看在 HATEOAS...