설명
components.parameters에 정의하는 것만으로 매개변수가 요청에 적용되지는 않습니다. 경로나 작업의 parameters에서 참조해야 하며, 미사용 정의는 문서 정리 대상으로 검토할 수 있습니다.
잠재적 영향
사용자가 해당 매개변수를 실제 요청에서 받는 것으로 오해할 수 있습니다.
해결 방법
필요한 매개변수를 실제 사용 위치에서 $ref로 참조하세요. 이름, 위치, 필수 여부를 API에 맞추고, 다른 문서에서도 사용하지 않는 불필요한 정의만 제거하세요.
예시
다음 예시는 작업의 parameters에서 limitParam을 참조합니다.
변경 전
json
{
"openapi": "3.0.0",
"info": {
"title": "Simple API Overview",
"version": "1.0.0"
},
"paths": {
"/": {
"get": {
"operationId": "listVersionsv2",
"summary": "List API versions",
"responses": {
"200": {
"description": "Success"
}
}
}
}
},
"components": {
"parameters": {
"limitParam": {
"name": "limit",
"in": "query",
"description": "max records to return",
"required": true,
"schema": {
"type": "integer"
}
}
}
}
}
변경 후
json
{
"openapi": "3.0.0",
"info": {
"title": "Simple API Overview",
"version": "1.0.0"
},
"paths": {
"/": {
"get": {
"operationId": "listVersionsv2",
"summary": "List API versions",
"responses": {
"200": {
"description": "Success"
}
},
"parameters": [
{
"$ref": "#/components/parameters/limitParam"
}
]
}
}
},
"components": {
"parameters": {
"limitParam": {
"name": "limit",
"in": "query",
"description": "max records to return",
"required": true,
"schema": {
"type": "integer"
}
}
}
}
}