blueprint.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. from quart import Blueprint, jsonify, request
  2. from applications.ab_test import GetCoverService
  3. from applications.utils import generate_task_trace_id
  4. from applications.tasks import TaskScheduler
  5. from applications.service import TaskManagerService
  6. server_blueprint = Blueprint("api", __name__, url_prefix="/api")
  7. def server_routes(pools, log_service):
  8. @server_blueprint.route("/get_cover", methods=["POST"])
  9. async def get_cover():
  10. params = await request.get_json()
  11. task = GetCoverService(pools, params)
  12. return jsonify(await task.deal())
  13. @server_blueprint.route("/run_task", methods=["POST"])
  14. async def run_task():
  15. trace_id = generate_task_trace_id()
  16. data = await request.get_json()
  17. task_scheduler = TaskScheduler(data, log_service, pools, trace_id)
  18. response = await task_scheduler.deal()
  19. return jsonify(response)
  20. @server_blueprint.route("/health", methods=["GET"])
  21. async def hello_world():
  22. # data = await request.get_json()
  23. return jsonify({"message": "hello world"})
  24. @server_blueprint.route("/tasks", methods=["POST"])
  25. async def task_list():
  26. data = await request.get_json()
  27. TMS = TaskManagerService(pool=pools, data=data)
  28. res = await TMS.list_tasks()
  29. return jsonify(res)
  30. return server_blueprint