架构变更: - 废弃volcengine_client.py直连,改为通过Sage uapi网关调用供应商API - rl_vendor_config表新增upappid和api_mapping(JSON)字段 - 新增_call_vendor()统一路由: vendor→upappid→apiname→UpAppApi.call() - 支持多供应商灵活映射,各家API数量/逻辑不同通过api_mapping配置 管理端UI: - vendor_config_manage.ui: Tabular列表展示供应商配置 - vendor_config_edit.ui: 供应商配置编辑页(AK/SK通过upapp/upappkey管理) - org_group_manage.ui: 机构映射管理页 - 新增api/get_upapp_list.dspy获取上位系统下拉选项 - 新增api/get_status_list.dspy获取状态下拉选项 客户端UI: - create_validate.ui: 真人认证页面,支持选择供应商创建H5认证 - upload_asset.ui: 上传素材页面,支持URL/base64上传 - index.ui: 新增客户端入口卡片(真人认证、上传素材) - 所有Form字段使用正确uitype(code/str/text),确保可输入 清理: - 废弃rl_app_user表,统一使用rl_asset_group+rl_org_group - 简化API签名,去除冗余apikey/secretkey透传
29 lines
886 B
Plaintext
29 lines
886 B
Plaintext
import json
|
|
|
|
# Vendor callback POSTs JSON body with BytedToken.
|
|
# The callback URL is configured when calling CreateVisualValidateSession.
|
|
# Typical payload: {"BytedToken": "...", "ReqUUID": "...", "Status": "..."}
|
|
|
|
body_str = http_request.get("body", "") or ""
|
|
byted_token = ""
|
|
|
|
try:
|
|
body = json.loads(body_str) if body_str else {}
|
|
byted_token = body.get("BytedToken", "")
|
|
if not byted_token:
|
|
byted_token = body.get("byted_token", "")
|
|
if not byted_token:
|
|
byted_token = body.get("Token", "")
|
|
except:
|
|
byted_token = ""
|
|
|
|
if not byted_token:
|
|
byted_token = params_kw.get("BytedToken", params_kw.get("byted_token", ""))
|
|
|
|
if not byted_token:
|
|
return {"success": False, "message": "缺少 BytedToken 参数"}
|
|
|
|
# vendor is determined by looking up the session record
|
|
result = await rl_handle_callback(byted_token, project_name="default")
|
|
return result
|