Cargando

  • 1 Min To Read
  • 01 Jan, 0001
    Índice de contenido

    Tenga en cuenta que la aplicación cliente anterior no necesita cambiar en absoluto; el servidor los cambios están ocultos para el cliente. Sin embargo, este sigue siendo un servidor de un solo subproceso. Podemos muy simplemente convertirlo en un servidor de subprocesos múltiples (uno que puede manejar múltiples solicitudes al mismo tiempo) por mezclando socketserver.ThreadingMixIn en TCPServer. Esto puede hacerse definiendo una nueva clase que no es más que una clase que se extiende tanto importar servidor de sockets clase MiTCPHandler(socketserver.BaseRequestHandler): """ La clase RequestHandler para el servidor. """ def init(self, solicitud, dirección_cliente, servidor): print(‘Configurar nombres y oficinas’) auto.direcciones = {‘JOHN’: ‘C45’, ‘DENISE’: ‘C44’, ‘PHOEBE’: ‘D52’, ‘ADÁN’: ‘B23’} super().init(solicitud, dirección_cliente, servidor) manejar def (auto): imprimir (‘En el identificador’)

    self.request es el socket TCP conectado

    al cliente

    datos = self.request.recv(1024).decode() print(‘datos recibidos:’, datos) clave = str(datos).superior() respuesta = self.direcciones[clave] imprimir(‘respuesta:’, respuesta)

    Enviar el resultado de vuelta al cliente

    self.request.sendall(response.encode()) def principal(): imprimir(‘Servidor de inicio’) dirección_servidor = (‘host local’, 8084) print(‘Creando servidor’) servidor = socketserver.TCPServer(dirección_servidor, Mi TCPHhandler) print(‘Activando servidor’) servidor.serve_forever() si nombre == ‘principal’: principal() 464 39 Enchufes en Python

    comments powered by Disqus