Swagger 如何为招摇过市的车型设定版本?
我有一个域模型,它包含许多类的东西,比如苹果、桔子和柠檬。例如,仅显示苹果:Swagger 如何为招摇过市的车型设定版本?,swagger,openapi,Swagger,Openapi,我有一个域模型,它包含许多类的东西,比如苹果、桔子和柠檬。例如,仅显示苹果: # version 1 Apple: type: object required: - id - name properties: id: type: integer name: type: string 稍后,我想在Apple中添加一个字段: # version 2 Apple: type: object required: -
# version 1
Apple:
type: object
required:
- id
- name
properties:
id:
type: integer
name:
type: string
稍后,我想在Apple中添加一个字段:
# version 2
Apple:
type: object
required:
- id
- name
- variety
properties:
id:
type: integer
name:
type: string
variety:
type: string
注:
我的数据库中仍然有版本1的Apple对象,它们将通过相同的API提供服务。
我希望按照v2模型中的要求准确地标记字段,因为这是重要的规范信息。
对我的整个API进行版本设置是不合适的,因为除了Apple之外,还有很多类型的模型,这样做会产生大量的版本。
OpenAPI版本3是否有一种对单个模型的模式进行版本控制的方法?我在规范中看不到任何明显的东西。我不想仅仅扩展对象并使所有字段都是可选的,因为这是不正确的
我唯一的选择似乎是定义Apple1和Apple2,但这似乎很笨拙