实时获取消息
前端轮询 有数据立即回复,没数据就回复没数据
长轮询 没有数据改变时不做任何响应
WebSocket
概述
WebSocket是HTML5规范中提出新的客户端-服务器通信协议,该协议本身使用新的ws://url
WebSocket是独立的、创建在TCP协议之上的协议,和HTTP的唯一的关系是使用了HTTP协议的101状态码进行协议切换。使用TCP的默认端口80,可以绕过大多数防火墙
WebSocket使客户端与服务端之间的数据交互变得更加简单,允许服务器直接向客户端推送数据而不需要客户端的请求。两者可以建立持久链接,并且数据可以双向通信
目前大多数主流浏览器都已经支持WebSocket
Tornado的WebSocket模块
WebSocketHandle 处理通信
open() 当一个WebSocket链接建立后被调用
on_message(message) 当客户端发送消息过来时调用
on_close() 当WebSocket链接关闭后调用
write_message(message, binary=False) 主动向客户端发送message消息,message可以是字符串或者字典(自动转为Json字符串)。如果binary为False,则message会以UT-8编码发送。如果为True,可以发送二进制模式,字节码。
close() 关闭WebSocket链接
check_origin(origin) 判断源origin,对于符合条件的请求源允许连接
qq群聊
home.html
<!DO