app.py 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. from flask import Flask, request, jsonify
  2. from api import mj_api
  3. from api.error import unauthorized_error
  4. from api.error import system_error
  5. app = Flask(__name__)
  6. @app.route('/')
  7. def hello():
  8. return "Hello World"
  9. # 查询历史所有任务列表
  10. @app.route('/thomas_jobs', methods=['POST'])
  11. def thomas_jobs():
  12. request_data = request.get_json()
  13. if request_data.get('cookie') is None:
  14. return jsonify({"error": "Cookie is missing!"}), 400
  15. if request_data.get('user_id') is None:
  16. return jsonify({"error": "page_size is required!"}), 400
  17. response_json_str = mj_api.thomas_jobs(cookie=request_data.get('cookie'), user_id=request_data.get('user_id'),
  18. page_size=request_data.get('page_size'))
  19. return response_json_str
  20. # 查询指定任务状态
  21. @app.route('/query_job_status', methods=['POST'])
  22. def query_job_status():
  23. request_data = request.get_json()
  24. if request_data.get('cookie') is None:
  25. return jsonify({"error": "Cookie is missing!"}), 400
  26. if request_data.get('job_id') is None:
  27. return jsonify({"error": "job_id is required!"}), 400
  28. response_json_str = mj_api.query_job_status(cookie=request_data.get('cookie'), job_id=request_data.get('job_id'))
  29. return response_json_str
  30. # 查询任务队列
  31. @app.route('/query_job_queue', methods=['POST'])
  32. def query_job_queue():
  33. request_data = request.get_json()
  34. if request_data.get('cookie') is None:
  35. return jsonify({"error": "Cookie is missing!"}), 400
  36. if request_data.get('user_id') is None:
  37. return jsonify({"error": "user_id is required!"}), 400
  38. response_json_str = mj_api.query_job_queue(cookie=request_data.get('cookie'), user_id=request_data.get('user_id'))
  39. return response_json_str
  40. # 提交任务
  41. @app.route('/submit_job', methods=['POST'])
  42. def submit_job():
  43. request_data = request.get_json()
  44. if request_data.get('cookie') is None:
  45. return jsonify({"error": "Cookie is missing!"}), 400
  46. if request_data.get('prompt') is None:
  47. return jsonify({"error": "prompt is required!"}), 400
  48. if request_data.get('user_id') is None:
  49. return jsonify({"error": "user_id is required!"}), 400
  50. response_json_str = mj_api.submit_job(cookie=request_data.get('cookie'), prompt=request_data.get('prompt'),
  51. user_id=request_data.get('user_id'))
  52. return response_json_str
  53. @app.errorhandler(unauthorized_error)
  54. def handle_unauthorized_error(error):
  55. response = jsonify({"error": str(error)})
  56. response.status_code = 401
  57. return response
  58. @app.errorhandler(system_error)
  59. def handle_system_error(error):
  60. response = jsonify({"error": str(error)})
  61. response.status_code = 500
  62. return response
  63. if __name__ == '__main__':
  64. app.run()