Могу ли я вернуть ответ до выполнения задачи? - PullRequest
0 голосов
/ 20 июня 2019

У меня есть простой колба API.Ниже приведен фрагмент кода.

@app.route("/newTask")
def task():
    new_task = Task()
    asyncio.run(new_task.do_something())  # something like this?
    return f'New task with number {new_task.id} created'


@app.route("/tasks")
def task_status():
    response = {task.id: task.status for task in TasksTable}
    return jsonify(response)

Когда я делаю запрос к http://something/newTask, я бы хотел сразу же увидеть ответ «Новое задание с номером X создано».И затем на /tasks конечной точке наблюдайте это:

{
  "1": "initialized", 
}

После обновления это:

{
  "1": "in progress", 
}

И через некоторое время это:

{
  "1": "done", 
}

Возможно ли этобез сельдерея?Может быть, используя asyncio?

...