首先安装插件,pip install dwebsocket,名称简直是简单粗暴!
直接上代码:
client端也就是html页面实现websocket:
#按钮触发,或者进入页面加载,随君看着办。。 $("#connect").click(function(event){ if(window.s){ window.s.close() } var socket = new WebSocket("ws://"+window.location.host+"/editcode/start_server_script/") socket.onopen=function(){ console.log('websocket conneted!') } socket.onmessage=function(event){ console.log(event.data) } socket.onclose=function(){ console.log('websocket cloase') } //保持连接 if(socket.readState == WebSocket.OPEN){ socket.onopen() } window.s = socket window.s.send("博主真帅!") })
server端也就是views.py中:
from dwebsocket.decorators import accept_websocket @accept_websocket def start_server_script(request): if request.is_websocket(): print "这里实现wbsocket连接逻辑" for info in request.websocket: #输出接受信息info print info #发送信息 request.websocket.send("博主好帅啊!") else: print "这里实现http连接逻辑"
urls.py:
url(r'start_server_script/$','start_server_script')
不用dwebsocket直接用python来实现websocket请查看另一篇博文:https://www.520pf.cn/article/104.html
以上是客户端与服务端之间的通信,如果需要客户端之间通信,可以在服务端处理多个客户端的时候过滤,留下需要通信的一方。或者直接使用webrtc技术,强烈建议此技术。