【问题标题】:Django Channels: How to flush send bufferDjango Channels:如何刷新发送缓冲区
【发布时间】:2018-01-12 21:53:29
【问题描述】:

我正在使用带有 Channels 的 Django 1.10 作为我正在构建的应用程序的后端。 我已经在我的客户端(Angular 4)和 Django 之间建立了 websocket 通信。一切正常,但我有点困惑。

考虑以下代码:

@channel_session
def ws_receive(message):
    for a in range(10):
        message.reply_channel.send({'text': json.dumps({'test': '123'})})
        time.sleep(1)

我在客户端 for 循环完成迭代后收到响应,在本例中为 10 秒后。

问题:是否可以刷新send“缓冲区”,这意味着message.reply_channel.send 函数将立即发送?

【问题讨论】:

    标签: django websocket channel


    【解决方案1】:

    即时回复集immediately=True:

    message.reply_channel.send({'text': json.dumps({'Hejsa!!': 'hihi'})}, immediately=True)
    

    【讨论】:

      猜你喜欢
      • 2016-07-06
      • 2010-09-20
      • 1970-01-01
      • 2015-08-10
      • 2021-09-03
      • 2018-07-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多