docs(common): 공통 응답 봉투 + healthz 설명 보강
- gmodel: ErrorInfo(success/code/desc) + Res_WebPacketProtocol(result/msg) 에 description 추가 → 모든 Res_* 응답의 공통 봉투가 Swagger 에 채워짐. - router: /healthz 에 summary/description 추가(유일하게 설명 없던 오퍼레이션). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
70104404eb
commit
be2865a4b2
@ -15,9 +15,9 @@ class StructModel:
|
|||||||
class ErrorInfo(BaseModel, StructModel):
|
class ErrorInfo(BaseModel, StructModel):
|
||||||
"""모든 응답에 공통으로 실리는 결과 정보. result.success / code / desc 로 내려간다."""
|
"""모든 응답에 공통으로 실리는 결과 정보. result.success / code / desc 로 내려간다."""
|
||||||
|
|
||||||
success: Optional[bool] = True
|
success: Optional[bool] = Field(True, description="처리 성공 여부 (성공 시 true)")
|
||||||
code: Optional[int] = ErrorType.SUCCESS.value
|
code: Optional[int] = Field(ErrorType.SUCCESS.value, description="결과 코드 (ErrorType, 0=성공)")
|
||||||
desc: Optional[str] = ErrorType.SUCCESS.name
|
desc: Optional[str] = Field(ErrorType.SUCCESS.name, description="결과 코드 이름 (ErrorType.name)")
|
||||||
|
|
||||||
def SetResult(self, enum: ErrorType):
|
def SetResult(self, enum: ErrorType):
|
||||||
if enum is not None:
|
if enum is not None:
|
||||||
@ -41,8 +41,8 @@ class Req_WebPacketProtocol(WebPacketProtocol):
|
|||||||
|
|
||||||
class Res_WebPacketProtocol(WebPacketProtocol):
|
class Res_WebPacketProtocol(WebPacketProtocol):
|
||||||
# default_factory 로 인스턴스마다 새 ErrorInfo 를 생성한다 (mutable default 공유 방지).
|
# default_factory 로 인스턴스마다 새 ErrorInfo 를 생성한다 (mutable default 공유 방지).
|
||||||
result: ErrorInfo = Field(default_factory=ErrorInfo)
|
result: ErrorInfo = Field(default_factory=ErrorInfo, description="공통 처리 결과 (성공 여부/코드/설명)")
|
||||||
msg: Optional[str] = None
|
msg: Optional[str] = Field(None, description="부가 메시지 (선택)")
|
||||||
|
|
||||||
|
|
||||||
class UserInfo(StructModel):
|
class UserInfo(StructModel):
|
||||||
|
|||||||
@ -50,7 +50,12 @@ async def log_time(request: Request, call_next):
|
|||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
@app.get(path="/healthz", responses={404: {"description": "Not found"}})
|
@app.get(
|
||||||
|
path="/healthz",
|
||||||
|
summary="헬스체크",
|
||||||
|
description="서버 기동 시각(API_SERVER_START_TIME)을 반환하는 헬스체크 엔드포인트.",
|
||||||
|
responses={404: {"description": "Not found"}},
|
||||||
|
)
|
||||||
async def healthz():
|
async def healthz():
|
||||||
return API_SERVER_START_TIME
|
return API_SERVER_START_TIME
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user