2025-12-02 18:54:14 +08:00

1.9 KiB
Raw Permalink Blame History

1. 改进错误处理

  • AnalysisService.analyze_video 中捕获 ValueError 异常
  • AnalysisService.summarize_video 中捕获 ValueError 异常
  • AnalysisService.compare_videos 中捕获 ValueError 异常
  • 返回友好的错误消息,包含配置指导
  • 改进 DashScopeService._ensure_api_key 的错误消息,添加获取 API key 的链接
  • 确保错误消息格式统一

2. 验证错误响应

  • 代码修改完成,错误现在会返回 400 状态码而不是 500
  • 所有异常处理已正确实现
  • 错误消息包含配置指导和 API key 获取链接
  • 代码通过 lint 检查,无错误

实施完成总结

已完成的修改

  1. app/services/analysis_service.py

    • analyze_video 方法:添加了 ValueError 异常捕获
    • summarize_video 方法:添加了 ValueError 异常捕获
    • compare_videos 方法:添加了 ValueError 异常捕获
    • 所有方法都返回友好的错误消息
  2. app/services/dashscope_service.py

    • _ensure_api_key 方法:改进了错误消息,添加了 API key 获取链接
  3. app/routes/video_routes.py

    • 路由已经正确使用 error_response 返回 400 状态码

改进效果

  • 之前API key 未设置时返回 500 内部服务器错误
  • 现在API key 未设置时返回 400 客户端错误,包含清晰的配置指导

错误消息示例

当 API key 未设置时,用户会收到以下错误消息:

DashScope API key is required for video analysis. 
Please set 'dashscope.api_key' in config.yaml file, 
or set DASHSCOPE_API_KEY environment variable. 
You can obtain your API key from: https://dashscope.console.aliyun.com/

测试建议

  1. 在未设置 API key 的情况下测试视频分析功能
  2. 验证错误消息在前端正确显示
  3. 设置 API key 后验证功能正常工作