我有一个芹菜任务:
task.py
import requests as rq
import ...
@celery.task
def process_element(custid, element_code):
element = Element.query.filter_by(element_code=element_code).first()
payload = vars(element)
del payload['_sa_instance_state']
print('1:', payload)
r = rq.post('http://localhost/feedbackquestion', json=payload, timeout=2)
print('2:', payload)
r = rq.post('http://localhost/process', json=payload, timeout=2)
发生的是第一个请求获取完整的有效负载,而第二个请求仅占用有效负载的一小部分。 这有什么逻辑吗?
编辑: 我已经通过使用有效负载的copy.deepcopy并在第二个请求中使用复制的变量为我解决了这个问题。但我仍然不明白这里发生了什么。