aidog_request_tools.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import traceback
  2. from django.http import HttpResponse,JsonResponse
  3. # POST请求 处理时间和参数验证
  4. def handle_post_request_parameters(request, required_params):
  5. params = {}
  6. for param in required_params:
  7. value = request.POST.get(param, '')
  8. if not value:
  9. raise ValueError(f"Invalid input parameter: {param} is empty")
  10. params[param] = value
  11. return params
  12. # POST请求 不处理参数验证
  13. def handle_post_request_has_empty_parameters(request, required_params):
  14. params = {}
  15. for param in required_params:
  16. value = request.POST.get(param, '')
  17. params[param] = value
  18. return params
  19. # GET请求 处理时间和参数验证
  20. def handle_get_request_parameters(request, required_params):
  21. params = {}
  22. for param in required_params:
  23. value = request.GET.get(param, '')
  24. if not value:
  25. raise ValueError(f"Invalid input parameter: {param} is empty")
  26. params[param] = value
  27. return params
  28. # 统一的错误响应处理 todo===============待拆分----2025-3-31----feng
  29. def handle_error(error_message):
  30. # 打印错误堆栈信息到日志或控制台
  31. traceback.print_exc()
  32. return JsonResponse({"status": "error", "message": error_message}, status=500)