流程
1、处理多个客户端,初始化ThreadingTCPServer实例。
2、设置绑定IP地址、端口和处理类别。
3、使用StreamrequestHandler。
(使用过程中的请求处理程序类似于file-like对象,提供简化通信过程的标准文件接口),重写中的handle方法,获取请求数据,并将数据返回客户端
实例
fromsocketserverimportBaseRequestHandler,TCPServer classEchoHandler(BaseRequestHandler): defhandle(self): print("GotConnectionFrom:%s"%str(self.client_address)) whileTrue: msg=self.request.recv(8192) ifnotmsg: break self.request.send(msg) if__name__=="__main__": server=TCPServer(("",5000),EchoHandler) server.serve_forever()
fromsocketserverimportStreamRequestHandler,TCPServer,ThreadingTCPServer importtime classEchoHandler(StreamRequestHandler): defhandle(self): print("GotConnectionAddress:%s"%str(self.client_address)) forlineinself.rfile: print(line) self.wfile.write(bytes("hello{}".format(line.decode('utf-8')).encode('utf-8'))) if__name__=="__main__": serv=ThreadingTCPServer(("",5000),EchoHandler) serv.serve_forever()
以上是python socketserver处理客户端流程,希望对大家有所帮助。更多Python学习指导:python基础教程
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。