【发布时间】:2021-09-13 16:51:42
【问题描述】:
我需要为搜索 API 定义 swagger/OpenAPI v 3.0 文件。 我的请求可以指定地理空间坐标(经度和纬度)或(邮政编码和国家/地区代码)或(城市和州以及国家/地区代码)。 除了这些之外,我还有一些强制性属性,例如 distance 和 distanceUnits。
我知道如何在 JSON 架构中做到这一点
"dependencies": {
"postalCode": ["countryCode"],
"city": ["state", "countryCode"],
"longitude": ["latitude"],
"latitude": ["longitude"]
},
"anyOf": [
{
"required": ["longitude", "latitude"]
},
{
"required": ["postalCode", "countryCode"]
},
{
"required": ["city", "state", "countryCode"]
}
]
}
但我在大摇大摆地定义它时遇到了麻烦。 OpenAPI 3.0 允许 oneOf 和 anyOf 构造,但如果我尝试在 必需部分,swagger编辑器给我一个错误。
任何帮助将不胜感激。
【问题讨论】: