result.py 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  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. "data": data
  31. }
  32. def json_response(data, status_code=200):
  33. """
  34. Create a JSON response with proper headers
  35. Args:
  36. data: The data to return (will be passed to jsonify)
  37. status_code: HTTP status code
  38. Returns:
  39. Flask Response object with proper JSON headers
  40. """
  41. response = make_response(jsonify(data), status_code)
  42. response.headers['Content-Type'] = 'application/json; charset=utf-8'
  43. return response
  44. def success_response(data=None, message="操作成功", status_code=200):
  45. """
  46. Return a standardized success response with proper headers
  47. Args:
  48. data: The data to return
  49. message: A success message
  50. status_code: HTTP status code
  51. Returns:
  52. Flask Response object with proper JSON headers
  53. """
  54. return json_response(success(data, message, status_code), status_code)
  55. def failed_response(message="操作失败", status_code=500, data=None):
  56. """
  57. Return a standardized error response with proper headers
  58. Args:
  59. message: An error message
  60. status_code: HTTP status code
  61. data: Optional data to return
  62. Returns:
  63. Flask Response object with proper JSON headers
  64. """
  65. return json_response(failed(message, status_code, data), status_code)