From 6fa80d12663171b14c6f27bcc17ed5e9c8958b66 Mon Sep 17 00:00:00 2001 From: linyq Date: Thu, 21 Nov 2024 16:50:46 +0800 Subject: [PATCH] =?UTF-8?q?refactor(webui):=20=E4=BC=98=E5=8C=96=E5=89=A7?= =?UTF-8?q?=E6=9C=AC=E7=94=9F=E6=88=90=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 调整 API 请求方式,使用 JSON 数据发送请求 - 添加请求头,指定内容类型为 application/json -优化异常处理,捕获具体异常信息 --- webui/components/script_settings.py | 30 ++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/webui/components/script_settings.py b/webui/components/script_settings.py index 50bf4a9..e10bd93 100644 --- a/webui/components/script_settings.py +++ b/webui/components/script_settings.py @@ -497,15 +497,19 @@ def update_progress(progress: float, message: str = ""): raise Exception("没有有效的帧内容可以处理") # ===================开始生成文案=================== - update_progress(90, "正在生成文案...") + update_progress(80, "正在生成文案...") # 校验配置 api_params = { - 'vision_model_name': vision_model, - 'vision_api_key': vision_api_key, - 'vision_base_url': vision_base_url, - 'text_model_name': text_model, - 'text_api_key': text_api_key, - 'text_base_url': text_base_url + "vision_api_key": vision_api_key, + "vision_model_name": vision_model, + "vision_base_url": vision_base_url or "", + "text_api_key": text_api_key, + "text_model_name": text_model, + "text_base_url": text_base_url or "" + } + headers = { + 'accept': 'application/json', + 'Content-Type': 'application/json' } session = requests.Session() retry_strategy = Retry( @@ -518,13 +522,13 @@ def update_progress(progress: float, message: str = ""): try: response = session.post( f"{config.app.get('narrato_api_url')}/video/config", - params=api_params, + headers=headers, + json=api_params, timeout=30, - verify=True # 启用证书验证 + verify=True ) - except: + except Exception as e: pass - custom_prompt = st.session_state.get('custom_prompt', '') processor = ScriptProcessor( model_name=text_model, @@ -536,7 +540,7 @@ def update_progress(progress: float, message: str = ""): # 处理帧内容生成脚本 script_result = processor.process_frames(frame_content_list) - # 将结果转换为JSON字符串 + # ��结果转换为JSON字符串 script = json.dumps(script_result, ensure_ascii=False, indent=2) except Exception as e: @@ -561,7 +565,7 @@ def update_progress(progress: float, message: str = ""): if not api_key: raise ValueError("未配置 Narrato API Key,请在基础设置中配置") - # 准备API请求 + # 准���API请求 headers = { 'X-API-Key': api_key, 'accept': 'application/json'