首先安装插件,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技术,强烈建议此技术。