|
|
|
@ -32,12 +32,17 @@ class Client:
|
|
|
|
|
reader, writer = await asyncio.open_connection(self.__ip, self.__port)
|
|
|
|
|
await self.handle(reader, writer)
|
|
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
|
async def receive_message(reader) -> str:
|
|
|
|
|
size, = struct.unpack('<L', await reader.readexactly(4))
|
|
|
|
|
message = await reader.readexactly(size)
|
|
|
|
|
return message.decode('utf-8')
|
|
|
|
|
|
|
|
|
|
async def handle(self, reader, writer):
|
|
|
|
|
try:
|
|
|
|
|
while True:
|
|
|
|
|
size, = struct.unpack('<L', await reader.readexactly(4))
|
|
|
|
|
message = await reader.readexactly(size)
|
|
|
|
|
print(f"{message.decode('utf-8') =}")
|
|
|
|
|
title = await self.receive_message(reader)
|
|
|
|
|
message = await self.receive_message(reader)
|
|
|
|
|
|
|
|
|
|
except asyncio.CancelledError:
|
|
|
|
|
print('Something went wrong')
|
|
|
|
|