Как поочередно принимать сообщения от клиента и обрабатывать их на сервере?

Не могу реализовать сервер так, чтобы он поочередно принимал сообщения и обрабатывал их (возвращал в алфавитном порядке). Сервер принимает только первое сообщение и игнорирует остальные.


SERVER

import socket
def sorttext(text):
   w = text.split()
   e = ""
   for r in sorted(w):
      e = e + " \n" + r
   return e.encode('utf-8')

sock = socket.socket()
sock.bind(('', 5055))
sock.listen()
print('waiting for connection...')
try:
    while True:
        try: conn, addr = sock.accept()
        except sock.error: pass

        data = conn.recv(1024)
        if not data:
             break
        conn.send(sorttext(data.decode("utf-8")))
        print("Client > " + data.decode("utf-8"))
        conn.send(data)
finally:
        conn.close()

CLIENT

import socket as Socket

sock = Socket.socket()
sock.connect(('localhost', 5055))
while True:
     sock.send(input("enter massage: ").encode('utf-8'))
     data = sock.recv(1024)
     udata = data.decode("utf-8")
     print("Server > " + udata)


sock.close() 

UPD Server: теперь сообщение от клиента доходят до сервера но не обрабатываютсявводим первое сообщение-все хорошо, но вводим следующее и сервер возвращает предыдущее

while True:
   data = conn.recv(1024)
   print("Client > " + data.decode("utf-8"))
   conn.send(sorttext(data.decode("utf-8")))
   conn.send(data)

Ответы (0 шт):