在我的烧瓶应用程序中,我在其中一个端点进行了chord
调用。我从此端点返回task_id
。
def post(self, ...):
.....
.....
.....
from celery import chord
result = chord(celery_task_list, callback.si(arg1, arg2)).delay()
return {'task_id': result.id}
我有另一个端点,我想从中检查回调是否完成。
def get(self, task_id):
from some_service import celery_app as app
a_result = app.AsyncResult(task_id)
print(a_result.status)
print(a_result.state)
print(a_result.result)
但是,对于前两个,总是PENDING
,对于最后一个,None
。可能是因为芹菜工人不承认task_id
。这里的解决方法是什么?