django+WebSocket主动推送数据到前端

django+WebSocket主动推送数据到前端
  • 一旦web服务器和客户端之间建立起websocket协议的通信连接,之后所有的通信都依靠这个专用协议进行。通信过程中可互相发下哦那个JSON、XML、HTML或者图片等任意格式的数据。
  • 由于是建立在HTTP协议的基础上,因此连接的发起方仍是客户端,而一旦确立websocket通信连接,不论服务器还是客户端,任意一方都可直接向对方发送报文。
  • websocket协议的主要特点:
    • 推送功能
      • 支持由服务器向客户端推送数据的推送功能。这样,服务器可直接发送数据,而不必等待客户端的请求。
    • 减少通信量
      • 只要建立起websocket连接,就希望一直保持连接状态。和HTTP相比,不但每次连接时的总开销减少,而且由于websocket的首部信息很小,通信量也响应减少了。
        在这里插入图片描述
        成功握手确立 WebSocket 连接之后,通信时不再使用 HTTP 的数据帧,而采用 WebSocket 独立的数据帧。
Django实现后端主动推送数据到前端

安装dwebsocket库

pip install dwebsocket 

settings.py

INSTALLED_APPS = [
  、、、、、、
    'dwebsocket'
    、、、、、、
]

views.py

from dwebsocket.decorators import accept_websocket
@accept_websocket
def connect(request):
    if request.is_websocket():  # 如果请求是websocket请求:
       #获取前端传来的值
       msg=request.websocket.wait()
       dict={}#自己设定要传到前端的字典值
       json.dumps(dict,ensure_ascii=False)
       #返回值到前端,这个操作只要连接还在就可以不断的向前端传值
  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值