我可以直接在 Swagger 2.0 中指定响应吗?

Can I specify the response directly in Swagger 2.0?

我根据以下定义我的回复:

responses:
  200:
    description: 'An authProvider object'
    schema:
      type: 'array'
      items:
        $ref: '#/definitions/AuthProvider'

我可以在响应中直接附加另一个字段或 2 个字段吗?我想添加一些我不想放入 AuthProvider

中的内容

只要用到$ref,基本上就是在用JSON Reference。根据定义(参见链接的规范),在与引用本身相同的对象中定义的任何内容都将被忽略。因此,无法在 $ref 定义的同时直接添加其他属性。

也就是说,您可以使用组合将两个对象'combine'合二为一。这是使用 allOf JSON 架构指令完成的。这种定义的一个简单示例如下所示:

  allOf: 
    - 
      $ref: "..."
    - 
      properties: 
        property1: 
          type: "string"
        property2: 
          type: "boolean"

注 1:各种 Swagger 工具目前可能不完全支持合成。 注释 2:与往常一样,通常最好将定义外部化(即使只使用一次)而不是内联定义。