Swagger 在招摇过市中有条件地包含元素
我想发送以下json请求Swagger 在招摇过市中有条件地包含元素,swagger,Swagger,我想发送以下json请求 { "outboundMessageRequest": { "senderAddress": "{senderAddress}", "charging": { "description":"{description}", "amount" : "{amount}" }, "outboundMessage": { "subject": "{subject}", "priority": "{
{
"outboundMessageRequest": {
"senderAddress": "{senderAddress}",
"charging": {
"description":"{description}",
"amount" : "{amount}"
},
"outboundMessage": {
"subject": "{subject}",
"priority": "{priority}"
}
}
}
我的问题是,如果用户未向描述字段提供值,如何从请求中删除收费元素
例如,如果用户没有为description元素提供值,服务器应该接收以下json
{
"outboundMessageRequest": {
"senderAddress": "{senderAddress}",
"outboundMessage": {
"subject": "{subject}",
"priority": "{priority}"
}
}
}
在swagger中,您可以将其描述为两种不同的模式——一种是入站模式,另一种是出站模式。您甚至可以使用
allOf
组合两个模式,并在它们之间建立关系。例如:
definitions:
MessageRequest:
properties:
senderAddress:
type: string
outboundMessage:
type: object
properties:
subject:
type: string
priority:
type: string
InboundMessage:
allOf:
- $ref: '#/definitions/MessageRequest'
- properties:
charging:
type: object
properties:
description:
type: string
amount:
type: number
format: double
这表示入站消息与出站消息相同,但具有额外的复杂属性