我想使用Django传输响应。为了做到这一点, 我有这样的观点:
def flights(request, query):
req_obj = Flights.RequestObject(query)
return StreamingHttpResponse(req_obj.make_response(), content_type="application/json")
为了生成流的数据,我有一个生成器函数“make_response”, 这是“航班”类的方法,实例化为“req_obj”。
生成器函数在特定时刻产生纯python字典。
def make_response(self):
for _ in range(0,3):
yield some_dict
time.sleep(1)
这会导致以下行为:
如果返回的字典是这样的
{“data”:“some_data”}
, 在第二次收益之后,用户收到的响应是:
{“data”:“some_data”} {“data”:“some_data”}
,这是无效的json。
有关如何解决此问题的任何建议?
答案 0 :(得分:0)
你有没有试过像
这样的东西req_obj.update(req_obj.make_response())
哪个会用您从方法中新获得的值更新您的初始字典?