result.py 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. from flask import jsonify, make_response
  2. def success(data=None, message="操作成功", code=200):
  3. """
  4. Return a standardized success response
  5. Args:
  6. data: The data to return
  7. message: A success message
  8. code: HTTP status code
  9. Returns:
  10. dict: A standardized success response
  11. """
  12. return {
  13. "code": code,
  14. "message": message,
  15. "data": data
  16. }
  17. def failed(message="操作失败", code=500, data=None):
  18. """
  19. Return a standardized error response
  20. Args:
  21. message: An error message
  22. code: HTTP status code
  23. data: Optional data to return
  24. Returns:
  25. dict: A standardized error response
  26. """
  27. return {
  28. "code": code,
  29. "message": message,
  30. "success": False,
  31. "data": data
  32. }
  33. def json_response(data, status_code=200):
  34. """
  35. Create a JSON response with proper headers
  36. Args:
  37. data: The data to return (will be passed to jsonify)
  38. status_code: HTTP status code
  39. Returns:
  40. Flask Response object with proper JSON headers
  41. """
  42. response = make_response(jsonify(data), status_code)
  43. response.headers['Content-Type'] = 'application/json; charset=utf-8'
  44. return response
  45. def success_response(data=None, message="操作成功", status_code=200):
  46. """
  47. Return a standardized success response with proper headers
  48. Args:
  49. data: The data to return
  50. message: A success message
  51. status_code: HTTP status code
  52. Returns:
  53. Flask Response object with proper JSON headers
  54. """
  55. return json_response(success(data, message, status_code), status_code)
  56. def failed_response(message="操作失败", status_code=500, data=None):
  57. """
  58. Return a standardized error response with proper headers
  59. Args:
  60. message: An error message
  61. status_code: HTTP status code
  62. data: Optional data to return
  63. Returns:
  64. Flask Response object with proper JSON headers
  65. """
  66. return json_response(failed(message, status_code, data), status_code)