Mar*_*iro 1 jsonschema swagger swagger-ui
我正在编写一个 swagger 合约,但我的数据模型是使用 JSONSchemas 定义的。
\n\n创建模型后,我正在 swagger UI 中测试它们。现在我在使用“oneOf”作为参考时遇到问题。如下...
\n\n...\n "socio":{\n "type":{\n "oneOf":[\n {\n "properties":{\n "pessoaFisica":{\n //"pessoaFisica": "object",\n "$ref":"http://soa-mds/XXXXXX/apps/SOA/JSONSchemas/Corporativo/pessoaFisica.json"\n },\n "pessoaJuridica":{ \n //"pessoaJuridica": "object",\n "$ref":"http://soa-mds/dataprev.gov.br/apps/SOA/JSONSchemas/Corporativo/pessoaJuridica.json"\n },\n "estrangeiro":{\n //"estrangeiro": "object",\n "$ref":"http://soa-mds/XXXXXX/apps/SOA/JSONSchemas/Corporativo/estrangeiro.json"\n }\n }\n } \n ] \n }\n } \n },\n....\nRun Code Online (Sandbox Code Playgroud)\n\n经过研究,我没有找到\xc2\xb4t 找到将 oneOF 与 $ref 一起使用的正确方法。
\n\n谁能帮我?
\n\n\n正确的语法oneOf是:
"socio": {
"oneOf": [
{
"$ref": "http://soa-mds/XXXXXX/apps/SOA/JSONSchemas/Corporativo/pessoaFisica.json"
},
{
"$ref": "http://soa-mds/dataprev.gov.br/apps/SOA/JSONSchemas/Corporativo/pessoaJuridica.json"
},
{
"$ref": "http://soa-mds/XXXXXX/apps/SOA/JSONSchemas/Corporativo/estrangeiro.json"
}
]
}
Run Code Online (Sandbox Code Playgroud)
确保您的规范使用"openapi": "3.0.0"而不是"swagger": "2.0"(oneOf仅在 OpenAPI 3.0 中受支持)。
所有引用的架构必须与 OpenAPI Schema 对象兼容。虽然 OpenAPI Schema 对象基于 JSON Schema,但某些 JSON Schema 关键字在 OpenAPI 中的工作方式不同,并且根本不支持某些关键字(例如id和)。patternProperties
| 归档时间: |
|
| 查看次数: |
4936 次 |
| 最近记录: |