RAML 是不是支持同一内容类型的多个响应模式?
Posted
技术标签:
【中文标题】RAML 是不是支持同一内容类型的多个响应模式?【英文标题】:Does RAML support multiple response schemas for the same content type?RAML 是否支持同一内容类型的多个响应模式? 【发布时间】:2017-01-17 10:58:41 【问题描述】:在我的项目中,所有 POJO 类都在扩展父类。由于我的控制器有一个方法,其返回类型是父类,但实际上它在这里返回子类,我使用多态性的概念,即我将子类类型转换为父类班级。
在 RAML 生成代码中: RAML 生成器代码基本上使用控制器的方法签名,因为签名包含父类,因此它将生成 Parent 的模式,但实际上我们需要实际响应的模式。
RAML 的 API 响应中是否可以添加两个模式? 要么 有没有什么办法可以得到使用多态概念的API实际响应的schema?
【问题讨论】:
【参考方案1】:考虑使用Union Type 和Discriminator。联合类型的实例必须满足至少一种关联类型的所有限制。所以定义为Phone|Notebook
的联合类型的实例必须是Phone
或Notebook
(或两者)的实例。鉴别器允许在运行时推断单个对象的具体类型,因此它类似于多态的概念。
【讨论】:
以上是关于RAML 是不是支持同一内容类型的多个响应模式?的主要内容,如果未能解决你的问题,请参考以下文章