0
class ChatWebSocket(tornado.websocket.WebSocketHandler):
    clients = []
    def open(self):
        ChatWebSocket.clients.append(self)

        self.write_message(self)      
    def on_message(self, message):
        print(self)
        self.write_message('{"a":"SDF"}') 

    def on_close(self):
        ChatWebSocket.clients.remove(self)

我想将 self 对象转换为 json 并将其发送给客户端,以便我可以识别请求 on_message并将消息传递给适当的客户端。

4

1 回答 1

1

其实你做错了什么。您不需要将 self 转换为 json 并将其发送给客户端。ChatWebSocket 的每个实例都有关于其 ws-connection 的信息。所以方法write_message将消息发送到适当的客户端。

def write_message(self, message, binary=False):
    if isinstance(message, dict):
        message = tornado.escape.json_encode(message)
    self.ws_connection.write_message(message, binary=binary)
于 2013-06-25T18:55:20.220 回答