31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
import socket
|
|
|
|
HOST, PORT = '0.0.0.0', 65432
|
|
|
|
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as server:
|
|
server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
|
server.bind((HOST, PORT))
|
|
server.listen(1)
|
|
print(f"🟢 TCP сервер запущен на {HOST}:{PORT}")
|
|
|
|
conn, addr = server.accept()
|
|
with conn:
|
|
print(f"🔗 Подключён клиент: {addr}")
|
|
while True:
|
|
data = conn.recv(1024)
|
|
if not data: # Клиент закрыл соединение
|
|
print("🔌 Клиент разорвал соединение.")
|
|
break
|
|
|
|
msg = data.decode('utf-8').strip()
|
|
print(f"📥 Получено: {msg}")
|
|
|
|
if msg.lower() == 'exit':
|
|
print("👋 Получена команда exit. Завершаю работу сервера.")
|
|
break
|
|
|
|
# Преобразуем в верхний регистр и отправляем обратно
|
|
response = f"SERVER: {msg.upper()}\n"
|
|
conn.sendall(response.encode('utf-8'))
|
|
|
|
print("✅ TCP сервер остановлен.") |