猿问

tornado websocket 怎么区别每个连接的用户?

py:
importlogging
importos.path
importuuid
importtornado.httpserver
importtornado.ioloop
importtornado.options
importtornado.web
importtornado.websocket
defsend_message(message):
forhandlerinChatSocketHandler.socket_handlers:
try:
handler.write_message(message)
except:
logging.error('Errorsendingmessage',exc_info=True)
classMainHandler(tornado.web.RequestHandler):
defget(self):
self.render('index.html')
classChatSocketHandler(tornado.websocket.WebSocketHandler):
socket_handlers=set()
num=0
defopen(self):
ChatSocketHandler.num=ChatSocketHandler.num+1
name="name:%s"%ChatSocketHandler.num
ChatSocketHandler.socket_handlers.add(self)
send_message('Anewuserhasenteredthechatroom.')
defon_close(self):
ChatSocketHandler.num=ChatSocketHandler.num-1
ChatSocketHandler.socket_handlers.remove(self)
send_message('Auserhasleftthechatroom.')
defon_message(self,message):
send_message(message)
defmain():
application=tornado.web.Application([
('/',MainHandler),
('/new-msg/socket',ChatSocketHandler)
],debug=True)
http_server=tornado.httpserver.HTTPServer(application)
http_server.listen(8000)
tornado.ioloop.IOLoop.instance().start()
if__name__=='__main__':
main()
html:
{{title}}
helloworld
send
这个一个简单的demo
我想改进下
页面上设置好用户名,然后每次发言的时候带上用户名
这个应该怎么改?
守候你守候我
浏览 347回答 2
2回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答