WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。
Tornado中定义了tornado.websocket.WebSocketHandler来处理websocket请求。
Tornado框架的安装以及入门这里就不说了,想入门tornado的请移步我的另一篇文章奥小飞:基于Python的Tornado框架入门zhuanlan.zhihu.com
WebSocketHandler类中方法简介
open()
当websocket连接建立后被调用
on_message(message) *该方法必须被重写
当收到客户端发送的消息时被调用
on_close()
当websocket连接关闭后被调用
write_message(message, binary=False)
向客户端发送消息,message可以是字符串或字典(字典会被转为json)。若binary为False,则message以utf8编码发送;二进制模式(binary=True)时,可发送任何字节码。
close()
关闭websocket连接
check_origin(origin)
判断源origin,对于符合条件(返回判断结果为True)的请求源origin允许其连接,否则返回403。可以重写此方法来解决WebSocket的跨域请求(如始终return True)。
websocket demo
import tornado.ioloop
import tornado.web
import tornado.websocket
class ConnectHandler(tornado.websocket.WebSocketHandler) :
def check_origin(self, orig