How to make server program

  1. import SockServer
  2. class for request that extends BaseRequesthandler
  3. class for server that extend TCP/UDP Server
  4. If you needs, with Fork/Thread MixIn
 import SocketServer

 ECHO_PORT = 23456
 CRLF = '\r\n'
 
 class EchoRequestHandler(BaseRequestHandler):
   def setup(self):
     print "Client connected %s" % self.client_address

   def handle(self):
     while 1:
       text = self.request.recv(1024)

       if not text:
         print "Closed by client"
         break

       if text[0:2] == ':q':
         break

       data_length = self.request.send(text)
       print "recv : %s" % text.strip()
       print "send : %s [%d]" % (text.strip(), data_length)

   def finish(self):
     print "finish"


 class EchoServer(TCPServer):
   def __init__(self, address, port, request_handler):
     TCPServer.__init__(self, (address, port), request_handler)

 if __name__ == '__main__':
   echo = EchoServer("localhost", ECHO_PORT, EchoRequestHandler)
   echo.serve_forever()