7

次のような配列を含む JSON を返すことができる静的な swagger ファイルを使用して、API を文書化しようとしています。

[
  {
    "type": "type A",
    "field A": "this field is specific to type A"
  },
  {
    "type": "type B",
    "field B": "this field is specific to type B"
  }
]

ポリモーフィズムを使用するか、複数の例を明示的に定義して、仕様を定義するいくつかの異なる方法を試しました。例は常に次のようになります。

[
  {
    "type": "type A",
    "field A": "this field is specific to type A",
    "field B": "this field is specific to type B"
  }
]

あるいは単に:

[
  {
    "type": "type A",
    "field A": "this field is specific to type A"
  }
]

swagger 仕様で例を定義して、swagger-ui によって表示されるサンプル ペイロードに、最初に記述した JSON のようなタイプ A の例とタイプ B の例を含む配列が含まれるようにする方法はありますか?

4

2 に答える 2

1

できません。

response ごとに、MIME タイプごとに 1 つの例のみを定義できます。

{
  "description": "A response",
  "schema": {
    "type": "string"
    }
  },
  "examples": {
    "application/json": {
      "name": "Dog"
    },
    "application/xml": {
      "name": "Cat"
    }
  }
}

完全なシナリオを追加したい場合は、完全なシナリオの例を HTML ページに記述 (または生成) し、それをexternalDocsにリンクすることをお勧めします。ルート、オペレーション、タグ、およびスキーマで externalDocs を定義できます。

于 2015-06-27T20:37:09.153 に答える