"""统一 API 响应包装与业务异常 响应格式:{"code": 0, "data": ..., "message": "ok"} 错误码约定:0 成功;1001 请求参数校验失败;2000 服务器内部错误。 """ from typing import Any def ok(data: Any) -> dict[str, Any]: """成功响应包装""" return {"code": 0, "data": data, "message": "ok"} def error(code: int, message: str) -> dict[str, Any]: """错误响应包装""" return {"code": code, "data": None, "message": message} class ApiError(Exception): """业务异常:携带错误码与消息,由全局异常处理器转为统一错误响应""" def __init__(self, code: int, message: str) -> None: self.code = code self.message = message super().__init__(message)