废话不多说,直接上代码,详见代码注释.
class UpdateWebSocket(WebSocketHandler,_AccountBaseHandler):
"""websocket代替轮询获取更新的数据
"""
# 保存连接用户,用于后续推送消息
all_shop_admins = set()
#建立连接的时候,把用户保存到字典里面,用于后续推送消息使用
def open(self):
print("new client opened")
# 初始化
all_shop_admins.add(self)
# 关闭连接的时候需要清空连接用户
def on_close(self):
all_shop_admins.remove(self)
# 项目中调用方法UpdateWebSocket.send_demand_updates(message)来给用户发送消息
@classmethod
def send_demand_updates(cls,message):
# 给第一个用户推送消息
all_shop_admins[0].write_me