python tornado websocket在重新连接时出错

2024-09-28 17:27:12 发布

您现在位置:Python中文网/ 问答频道 /正文

下面是tornado websocket服务器的简单python代码。在

import tornado.httpserver
import tornado.websocket
import tornado.ioloop
import tornado.web
import time
import os
import subprocess
from subprocess import *
import datetime

listeners = []


class WSHandler(tornado.websocket.WebSocketHandler):

  def open(self):
    print 'New connection was opened'
    self.write_message("Con!")
    listeners.append(self)


  def on_message(self, message):
    print 'Received:', message
    self.write_message("Received: " + message)
    for w in listeners:
        w.write_message('MASS MESSAGE')

  def on_close(self):
    print 'Con closed...'


  def trimite(self, msg):
    self.write_message(msg)


application = tornado.web.Application([
  (r'/ws', WSHandler),
])

if __name__ == "__main__":
  http_server = tornado.httpserver.HTTPServer(application)
  http_server.listen(65)
  tornado.ioloop.IOLoop.instance().start()

每次从我的网页到websocket服务器执行命令时,都会向所有连接发送一条消息。它工作正常…但是,如果我关闭并重新连接一个客户机并尝试发送另一个命令,我会得到这个错误,连接就会关闭。我必须重新启动websocket服务器才能让它再次工作。有什么想法为什么?谢谢!在

^{pr2}$

Tags: importself服务器webmessagedeftornadowebsocket