説明
HTTPの規則では、HEAD リクエストへのレスポンスと、204 または 304 のレスポンスに本文はありません。本文スキーマを定義すると、実際のレスポンス契約と矛盾します。
想定される影響
クライアントや生成されたSDKが存在しない本文を解析しようとしたり、テストが誤った結果を期待したりする可能性があります。
対処方法
これらのレスポンスから本文の定義を削除してください。OpenAPI 3.0では content、2.0ではレスポンスの schema が該当します。説明と必要なヘッダー情報は残してください。
例
次のOpenAPI 3.0の抜粋では、204 レスポンスから content を削除しています。参照先の ApiVersion の定義は省略しています。
変更前
json
{
"openapi": "3.0.0",
"paths": {
"/": {
"delete": {
"responses": {
"204": {
"description": "has content",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiVersion"
}
}
}
}
}
}
}
}
}
変更後
json
{
"openapi": "3.0.0",
"paths": {
"/": {
"delete": {
"responses": {
"204": {
"description": "no content"
}
}
}
}
}
}