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)

on_messageリクエストを識別して適切なクライアントにメッセージを配信できるように、self オブジェクトを json に変換してクライアントに送信したいと考えてい ます。

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 に答える