如何让django channel comsumer异步发送回复

时间:2017-12-26 04:31:58

标签: python django websocket django-channels

在我的消费者中,我写了几个reply_channel.send

> def ws_message(message):    
>     line = get_output()
>     message.reply_channel.send({
>         "text": line,
>     })
>     line = get_output()
>     message.reply_channel.send({
>         "text": line,
>     })    line = get_output()
>     message.reply_channel.send({
>         "text": line,
>     })

我发现消费者在最后一次执行message.reply_channel.send之前没有发送这三个回复。

如果每次执行reply_channel.send后立即发送回复,我该怎么办?

我这样做是因为我有一个程序以随机​​间隔生成输出。如果我使用上面的代码,网页将等到完整的结果到来,这对用户来说是非常不友好的。

谢谢!

1 个答案:

答案 0 :(得分:0)

将immediate = True传递给send参数。