MCPcopy
hub / github.com/HisMax/RedInk / normalize_error_result

Function normalize_error_result

backend/routes/utils.py:78–97  ·  view source on GitHub ↗

将 service 返回的旧格式错误转换为统一错误对象,同时保留兼容字段。

(result: dict, context: dict = None, fallback_status: int = 500)

Source from the content-addressed store, hash-verified

76
77
78def normalize_error_result(result: dict, context: dict = None, fallback_status: int = 500) -> dict:
79 """将 service 返回的旧格式错误转换为统一错误对象,同时保留兼容字段。"""
80 if result.get("success", False):
81 return result
82
83 error = result.get("error") or result.get("error_message") or "操作失败"
84 if isinstance(error, dict) and error.get("code"):
85 error_obj = error
86 error_message = result.get("error_message") or f"{error_obj.get('title', '操作失败')}:{error_obj.get('suggestion') or error_obj.get('detail', '')}"
87 else:
88 app_error = ensure_app_error(error, context=context)
89 if app_error.status == 500 and fallback_status != 500:
90 app_error.status = fallback_status
91 error_obj = app_error.to_dict()
92 error_message = app_error.to_message()
93
94 next_result = dict(result)
95 next_result["error"] = error_obj
96 next_result["error_message"] = error_message
97 return next_result
98
99
100def mask_api_key(key: str) -> str:

Callers 7

scan_taskFunction · 0.85
scan_all_tasksFunction · 0.85
retry_single_imageFunction · 0.85
regenerate_imageFunction · 0.85
generate_contentFunction · 0.85
generate_outlineFunction · 0.85

Calls 4

ensure_app_errorFunction · 0.90
getMethod · 0.80
to_dictMethod · 0.80
to_messageMethod · 0.80