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