各応答構造にコピーせずに、すべての応答に存在するカスタム応答ヘッダーを宣言することは可能ですか?
4917 次
2 に答える
4
これは OpenAPI 3.0 でいくらか改善されました。インライン定義を繰り返す代わりに、グローバルcomponents/headers
セクションで共通ヘッダーを定義してから、これらの定義を定義できるようになりました。コードの重複を少し減らすために、応答全体 (400 など) を使用する$ref
こともできます。$ref
ただし、すべてのパスに共通のヘッダーを設定する方法はまだありません。各応答でヘッダーを明示的にリストする必要があります。
openapi: 3.0.1
...
paths:
/:
get:
responses:
'200':
description: OK
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
/something:
get:
responses:
'200':
description: OK
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/X-RateLimit-Limit'
X-RateLimit-Remaining:
$ref: '#/components/headers/X-RateLimit-Remaining'
components:
headers:
X-RateLimit-Limit:
description: Request limit per hour
schema:
type: integer
example: 100
X-RateLimit-Remaining:
schema:
type: integer
example: 96
于 2018-05-22T20:45:41.683 に答える
2
Writing OpenAPI (Swagger) Specification Tutorial – Part 5 – Advanced Input And Output Modelingのセクション 2.3 Response's headers によると、答えはノーです。これは、2.0仕様からも理解できます。
構造の改善に関する投票/コメント: ヘッダー処理の強化 · Issue #690 · OAI/OpenAPI-Specification .
于 2016-06-08T23:14:52.850 に答える