假设我有 2 个微服务
Foo
和 Bar
,并使用 gradle openApigenerate
yaml 文件中指定的所有内容生成 POJO。
openAPI生成器生成POJO如下:
Foo:
fooPojo1
fooPojo2
Accessible only to micro-service Foo
Bar:
barPojo1
barPojo2
Accessible only to micro-service Bar
我还在两个微服务之间共享模型。因此
barPojo1
和 barPojo2
在 Foo 中可用,而 fooPojo1
和 fooPojo2
在 Bar 中可用。
但是,如果我想在
fooPojo1
中使用 Bar
作为模式,我需要在 Bar 微服务中重新声明 fooPojo1
,如下所示:
Bar:
barPojo1
barPojo2
fooPojo1
那么我是否不必创建重复的对象,只需引用导入库中的现有对象,例如:
Bar:
barPojo1
barPojo2
$ref: foo-service.fooPojo1
我需要一个解决方案,因为每当我在 Bar 服务中使用
fooPojo1
时,我需要将 Bar 服务的 fooPojo1
映射到 Foo 服务的 fooPojo1
,对于内部通信反之亦然。
我尝试在 OpenApi 文档、stackoverflow 和其他各种地方寻找解决方案,但没有找到信息。不确定引用外部库作品。