Jos*_*ing 17 swagger swagger-2.0 swagger-editor
我正在用yaml写出我的招摇定义.假设我的定义看起来像这样.
paths:
/payloads:
post:
summary: create a payload
...
parameters:
- in: body
name: payload
description: New payload
required: true
schema:
$ref: "#/definitions/payload"
put:
summary: update a payload
...
parameters:
- in: body
name: payload
description: Updated existing payload
required: true
schema:
$ref: "#/definitions/payload"
...
definitions:
payload:
properties:
id:
type: string
someProperty:
type: string
...
Run Code Online (Sandbox Code Playgroud)
有没有办法可以指示PUT操作需要有效负载的id属性,并且POST操作是可选的(或者根本不应该出现)?
Ron*_*Ron 19
您必须单独定义模型.
但是,您可以选择排除和区别的情况.
如果您想要排除,这是一个简单的情况,请创建一个包含排除属性的模型,比如说ModelA.然后定义ModelB为ModelA加上附加属性:
ModelB:
allOf:
- $ref: "#/definitions/ModelA"
- type: object
properties:
id:
type: string
Run Code Online (Sandbox Code Playgroud)
如果您要定义差异,请按照上述相同方法,并排除idfrom ModelA.然后定义ModelB并ModelC扩展ModelA并向其添加id属性,每个属性都有自己的限制.请注意,JSON Schema可以让您在某些情况下按照上面的原始示例"覆盖"定义.但是,由于它并没有真正重写,并且需要更好地理解JSON Schema的概念以避免出现简单的错误,我建议现在就开始使用此路径.
| 归档时间: |
|
| 查看次数: |
6679 次 |
| 最近记录: |