Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import socket
- import threading
- import socketserver
- class ThreadedTCPRequestHandler(socketserver.BaseRequestHandler):
- def handle(self):
- data = self.request.recv(1024)
- cur_thread = threading.current_thread()
- response = "{}: {}".format(cur_thread.name, data)
- self.request.sendall(b'worked')
- class ThreadedTCPServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
- pass
- def client(ip, port, message):
- sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- sock.connect((ip, port))
- try:
- sock.sendall(message)
- response = sock.recv(1024)
- print("Received: {}".format(response))
- finally:
- sock.close()
- if __name__ == "__main__":
- # Port 0 means to select an arbitrary unused port
- HOST, PORT = "192.168.2.129", 9000
- server = ThreadedTCPServer((HOST, PORT), ThreadedTCPRequestHandler)
- ip, port = server.server_address
- # Start a thread with the server -- that thread will then start one
- # more thread for each request
- server_thread = threading.Thread(target=server.serve_forever)
- # Exit the server thread when the main thread terminates
- server_thread.daemon = True
- server_thread.start()
- print("Server loop running in thread:", server_thread.name)
- ip = '12.34.56.789'
- print(ip, port)
- client(ip, port, b'Hello World 1')
- client(ip, port, b'Hello World 2')
- client(ip, port, b'Hello World 3')
- server.shutdown()
- Traceback (most recent call last):
- File "C:UsersDr.FrevDesktopserverTest.py", line 43, in <module>
- client(ip, port, b'Hello World 1')
- File "C:UsersDr.FrevDesktopserverTest.py", line 18, in client
- sock.connect((ip, port))
- socket.error: [Errno 10061] No connection could be made because the target machine
- actively refused it
Add Comment
Please, Sign In to add comment