外观
检索错误码(176*)
段位:176001 - 176099;V1 暴露 2 个(176001 / 176002);176003-176010 仅在管理端 / 同步等非 V1 集成路径触发,不在本参考之列
通用约定(
code=1兜底 / 响应结构)见 README⚠️ 176001 是「统一 200」规则的有意例外:检索不可用以 HTTP 503 返回(而非 V1 业务错通常的 200),以便网关 / 客户端按标准 HTTP 语义识别后端不可用并退避重试。响应 body 仍是
ResponseDTO结构(code/msg/data)。176002 仍按常规 HTTP 200 返回。
176001 SEARCH_UNAVAILABLE
- HTTP status:503
- 含义:检索服务不可用
- 典型触发条件:调用
POST /v1/search/query时,语义检索所依赖的后端服务整体不可用,且无法降级到关键词检索完成本次请求 - 处理建议:按 HTTP 503 语义做指数退避后重试;若持续 503,携带响应中的
rid/X-Request-Id联系 ATKONBASE 支持团队确认检索后端状态。不要将 503 当作请求参数错误处理——请求本身有效,是服务端检索能力暂时不可用 - 示例响应:
json
{ "code": 176001, "msg": "检索服务不可用", "data": null }176002 SEARCH_QUERY_PARAMS_REQUIRED
- HTTP status:200
- 含义:检索请求参数不足
- 典型触发条件:调用
POST /v1/search/query时,keyword与fields都为空——两者至少需提供一个(这是跨字段约束,单字段非空校验无法表达,故在业务层校验) - 处理建议:请求体中至少提供
keyword(关键词检索)或fields(字段过滤检索)之一 - 示例响应:
json
{ "code": 176002, "msg": "keyword 和 fields 至少提供一个", "data": null }