本文介绍了OpenAPI 3.0 - oneOf 中的 allOf的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下 YAML:

openapi: 3.0.0信息:书名:测试版本:1.0.0路径:/测试:得到:总结:测试回应:'200':描述:测试内容:应用程序/json:架构:其中之一:- 所有的:- 类型:对象特性:第一:类型:字符串- 类型:对象特性:第一B:类型:字符串- 所有的:- 类型:对象特性:第二个:类型:字符串- 类型:对象特性:第二个B:类型:字符串

如果直接在 oneOf 内部嵌套多个 allOf 实例是无效的,我如何使用有效的规范实现相同的结果?

解决方案

ReDoc 作者在这里.这是一个 ReDoc 错误.您的规范有效.

它已经修复,将在 2.0.0-alpha.40 中可用.

The following YAML:

openapi: 3.0.0
info:
  title: test
  version: 1.0.0
paths:
  /test:
    get:
      summary: test
      responses:
        '200':
          description: Test
          content:
            application/json:
              schema:
                oneOf:
                  - allOf:
                    - type: object
                      properties:
                        firstA:
                          type: string
                    - type: object
                      properties:
                        firstB:
                          type: string
                  - allOf:
                    - type: object
                      properties:
                        secondA:
                          type: string
                    - type: object
                      properties:
                        secondB:
                          type: string

Does not render at all in the swagger editor.

In ReDoc it also fails to render properly:


If nesting multiple allOf instances directly inside of oneOf is invalid, how could I achieve the same result with a valid spec?

解决方案

ReDoc author here.It is a ReDoc bug. Your spec is valid.

It has been already fixed and will be available in 2.0.0-alpha.40.

这篇关于OpenAPI 3.0 - oneOf 中的 allOf的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-26 13:00