40 lines
815 B
Python
40 lines
815 B
Python
import socket
|
|
|
|
|
|
HOST = "0.0.0.0"
|
|
PORT = 10000
|
|
|
|
|
|
def process_message(message: str) -> str:
|
|
return f"TCP server received: {message.upper()}"
|
|
|
|
|
|
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
|
server.bind((HOST, PORT))
|
|
server.listen(1)
|
|
|
|
print(f"TCP server started on port {PORT}")
|
|
print("Send EXIT from client to stop the server")
|
|
|
|
while True:
|
|
conn, addr = server.accept()
|
|
print(f"Connection from {addr}")
|
|
|
|
data = conn.recv(1024)
|
|
if not data:
|
|
conn.close()
|
|
continue
|
|
|
|
message = data.decode("utf-8")
|
|
response = process_message(message)
|
|
conn.sendall(response.encode("utf-8"))
|
|
conn.close()
|
|
|
|
if message.strip().upper() == "EXIT":
|
|
print("TCP server stopped")
|
|
break
|
|
|
|
server.close()
|
|
|