manage.py
from tornado.ioloop import IOLoop from tornado.web import RequestHandler from tornado.websocket import WebSocketHandler from tornado.web import Application CLIENT_LIST = [] class MsgHandler(WebSocketHandler): def open(self): CLIENT_LIST.append(self) def on_message(self, message): for obj in CLIENT_LIST: obj.write_message(message) def on_close(self): CLIENT_LIST.remove(self) # 页面函数 class HomeHandler(RequestHandler): def get(self, *args, **kwargs): self.render('index.html') # 配置 settings = { 'template_path': 'templates', 'cookie_secret': 'asq3wuraldf' } # 页面对应函数 application = Application([ ('/home', HomeHandler), ('/msg', MsgHandler), ], **settings) if __name__ == '__main__': application.listen(8888) IOLoop.instance().start()