import SocketServer
class MyTCPHandler(SocketServer.BaseRequestHandler):
def handle(self):
self.data = self.request.recv(1024).strip()
print "%s wrote:" % self.client_address[0]
print self.data
self.request.send(self.data.upper())
if __name__ == "__main__":
HOST, PORT = "localhost", 9999
server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler)
server.serve_forever()
conn, address = self.socket.get_request()
то conn - это новый объект типа socket. Если его хранить, то соединение с клиентом не будет закрываться.
не пойму, как правильно работать с этим объектом.
т.е. к серверу коннектится несколько клиентов, соединение с каждым храниться. и через эти соединения могут отправлятся некоторые данные. с этим вроде понятно: проходим по списку и для каждого делаем conn.send().
а чтобы обрабатывать входящие в сокеты данные - нужно что-то придумывать более серьёзное. Возникает желание, чтобы вместо объекта socket в get_request приходил объект моего класса, унаследованного от socket. Это возможно?