私は、ビルドしているサービスのAPIを定義するためにOpenAPI 3.0を使用しています。私は、他のコンポーネントの中でスキーマコンポーネントを再利用することに問題があります。たとえば、ノートを作成した人のProfile
オブジェクトを含むNote
オブジェクトがあります。これは、$ref
キーワードを使用してProfile
オブジェクトを参照することにより、正常に動作します。この問題は、プロファイルのデータがないという例を示しています。下のような例でrefを配置すると、Profile
コンポーネントの実際のOpenAPIブロックProfile
のデータだけでなく、実際のOpenAPIブロックも含まれます。Open API継承したサンプルデータ
他のコンポーネントでコンポーネントを再利用したり、これらのコンポーネントでサンプルセットを再利用する方法があるのだろうか?
例:
FullNote:
allOf:
- $ref: '#/components/schemas/BaseNote'
- type: object
title: A single note response
required:
- id
- dateCreated
- profile
properties:
id:
type: integer
format: int32
dateCreated:
type: integer
format: int64
profile:
type: object
$ref: '#/components/schemas/Profile'
example:
id: 123456789
dateCreated: 1509048083045
profile:
$ref: '#/components/schemas/Profile'
同じ質問が、OpenAPIを/ SWAGGER約2.0:(https://stackoverflow.com/q/47525254/113116)[闊歩のレスポンスの例で$ REFを使用する方法?] – Helen